NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
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 – Lekce 13 - List

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Odpovídá na Jan Vargovský
Libor Šimo (libcosenior):10.9.2013 19:35

Navyše stále tvrdím že na default: môže a nemusí byť break;
Len pre ilustráciu:

namespace PomocnaApp
{
    class Program
    {
        static void Main(string[] args)
        {
            int x = 3;

            switch (x)
            {
                case 1:
                case 2:
                case 3:
                    Console.WriteLine(x);
                break;
            }
            Console.ReadKey();
        }
    }
}
Odpovědět
10.9.2013 19:35
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Odpovídá na Kit
Libor Šimo (libcosenior):10.9.2013 19:37

Netvrdil by som, že c# je hlúpy. Proste len vychádza zo základov céčka, ktoré fungovalo veľmi dobre niekoľko rokov. :)

Odpovědět
10.9.2013 19:37
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Kit:10.9.2013 19:41

Však právě kvůli této vlastnosti switche se v C nadělalo spoustu kopanců. A právě kvůli tomu zavedli do Javy warning, pokud za case není break nebo return. Je to velmi praktické a zabrání se tím hromadě zbytečných chyb.

Odpovědět
10.9.2013 19:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Libor Šimo (libcosenior):10.9.2013 19:44

Môže byť. Nie som tak zbehlý a dokonca to má aj logiku.
Ak kód písal človek neznalý veci, je to možné.

Odpovědět
10.9.2013 19:44
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Jan Vargovský
Tvůrce
Avatar
Jan Vargovský:10.9.2013 21:23

Zvláštní, čumím nato teď a fakt to tomu nevadí... Čumím do příručky a tam je to přímo jako příklad, že je to jakoby správně. Nevím odkud to mám zafixované v hlavě, že to nejde.

Zato se teda omlouvám, že jsem vydával nepravdivé informace.

Kit Překladači to nevadí, schvaluje to přímo příručka. Každopádně ti vynadá zato, že to spadá až do nekonečna -> že poslední case musí mít break, jinak je to vpohodě.
Dostaneš jen hlášku "Control cannot fall through from one case label ('case 3:')"

Ale fakt by mě zajímalo, odkud tohle v hlavě mám ...

 
Odpovědět
10.9.2013 21:23
Avatar
Odpovědět
10.9.2013 21:25
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Jan Vargovský:10.9.2013 21:28

Určitě to je z nějaké konverzace. A zvyk je teda, že píšu switch case po case, takže jsem vždycky na konci a chybí mi break, takže nato mě upozorní, ale že propadává jednotlivými case nevadí, každopádně jednou musí skončit a nepadat dolů donekonečna ... :)

 
Odpovědět
+1
10.9.2013 21:28
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Jan Vargovský:10.9.2013 21:30

Default je úplně stejný jako case, teď jsem to pro jistotu testoval a když máš default na začátku a nemáš tam break, tak propadne dolů na první case, takže to jakoby žádný default neudělá. Pokud je default na konci, jak je zvykem tak už break musí být -> to je to, o čem jsem mluvil, že to nemá kde spadnout na další větev(case) a hodí ti to syntaktickou chybu.

 
Odpovědět
10.9.2013 21:30
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Jan Vargovský
Kit:10.9.2013 21:37

Zajímavé. break před default je povinný. Dokonce i když tam větev default není.

Odpovědět
10.9.2013 21:37
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Libor Šimo (libcosenior):11.9.2013 5:30

Je fajn, že sme si ujasnili prepínač switch, ale touto debatou sa stalo, že sa úplne zabudlo na moj predchádzajúci dotaz. Tak ho pripomeniem.

Metóda Contains(object) pracuje tak, že hľadá len celý objekt, alebo stačí zadať napr. len jednu vlastnosť.? Ide mi o to, aby sa nemusel na vyhľadávanie použiť cyklus.

Odpovědět
11.9.2013 5:30
Aj tisícmíľová cesta musí začať jednoduchým krokom.
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 10 zpráv z 59.