Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Java enum - dny v týdnu -pořadí

Aktivity
Avatar
m1h2k3
Člen
Avatar
m1h2k3:26.3.2021 14:34

Ahoj, potřeboval bych poradit. Nevím, jak mám udělat pořadí

Zkusil jsem: enum Days {
Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
}
public static void main(String[] args) {
Days today = Days.Wednesday;
System.out.prin­tln("Today = " + today);

Chci docílit: "Naprogramujte jednoduchý program. Program bude obsahovat výčtové pole enum. Výčtové pole bude obsahovat dny v týdnu. Program vytiskne o jaký den se jedná a poté vytiskne pozici dne ve výčtovém poli. Dejte pozor na indexaci prvků v rámci pole,,
Takhle jsem to dostal za DÚ a nemůžu přijít na způsob, který by mi nevyhodil chybu

 
Odpovědět
26.3.2021 14:34
Avatar
Odpovídá na m1h2k3
Matúš Olejník:26.3.2021 15:33

Ahoj, ak ich do enumu dáš presne v poradí ako idú za sebou tak môžeš použiť priamo metódu enumu - ordinal()

System.out.println(DayEnu.Wednesday.name());
System.out.println(DayEnu.Wednesday.ordinal() + 1); // +1 lebo indexy začínajú od 0

java.lang.Enum<E extends Enum<E>>
public final int ordinal()
Returns the ordinal of this enumeration constant (its position in its enum declaration, where the initial constant is assigned an ordinal of zero). Most programmers will have no use for this method. It is designed for use by sophisticated enum-based data structures, such as EnumSet and EnumMap.
Returns:
the ordinal of this enumeration constant

Ak chceš napr. vlastné poradie môžeš týmto spôsobom

enum DayEnu {
        Monday(11),
        Wednesday(333),
        Tuesday(22),
        Friday(5),
        Thursday(4),
        Saturday(6),
        Sunday(7),
        ;

        private final int rank;

        DayEnu(int rank) {
            this.rank = rank;
        }

        public int getRank() {
            return rank;
        }
    }
....
....
System.out.println(DayEnu.Wednesday.getRank()); //vypíše 333
Editováno 26.3.2021 15:34
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
26.3.2021 15:33
/* I am not sure why this works but it fixes the problem */
Avatar
m1h2k3
Člen
Avatar
m1h2k3:26.3.2021 16:18

děkuji mnohokrát :)

 
Nahoru Odpovědět
26.3.2021 16:18
Avatar
Lubor Pešek
Člen
Avatar
Odpovídá na Matúš Olejník
Lubor Pešek:26.3.2021 17:21

Sice zbytečně to psát, ale hezky a přehledně napsané + krásný příklad. Hezká práce.

Nahoru Odpovědět
26.3.2021 17:21
Existují dva způsoby, jak vyřešit problém. Za prvé vyhoďte počítač z okna. Za druhé vyhoďte okna z počítače.
Avatar
Odpovídá na Lubor Pešek
Matúš Olejník:26.3.2021 17:24

Ďakujem, ale od tvojho vysvetľovania mám ešte ďaleko :D

Nahoru Odpovědět
26.3.2021 17:24
/* I am not sure why this works but it fixes the problem */
Avatar
Lubor Pešek
Člen
Avatar
Odpovídá na Matúš Olejník
Lubor Pešek:26.3.2021 17:42

Chceš říct moje slohy?:D:D

Nahoru Odpovědět
26.3.2021 17:42
Existují dva způsoby, jak vyřešit problém. Za prvé vyhoďte počítač z okna. Za druhé vyhoďte okna z počítače.
Avatar
Odpovídá na Lubor Pešek
Matúš Olejník:26.3.2021 17:56

:D hej, ale chcel som tým povedať, že sú kvalitné :)

Nahoru Odpovědět
26.3.2021 17:56
/* I am not sure why this works but it fixes the problem */
Avatar
Lubor Pešek
Člen
Avatar
Odpovídá na Matúš Olejník
Lubor Pešek:26.3.2021 18:21

No jak kdy.... s těmi verzemi Javy jsem se pěkně spálil :( O to horší bylo, že jsem na svém stanovisku trval :(

Nahoru Odpovědět
26.3.2021 18:21
Existují dva způsoby, jak vyřešit problém. Za prvé vyhoďte počítač z okna. Za druhé vyhoďte okna z počítače.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.