Všetci vo svojom živote pravidelne používame prepínače. Áno, hovorím o elektrických spínačoch, ktoré používame pre naše svetlá a ventilátory.
Ako vidíte na nasledujúcom obrázku, každý prepínač je určený na prevádzku pre konkrétne elektrické zariadenie.
Napríklad na obrázku je prvý vypínač pre ventilátor, ďalší pre svetlo a podobne.
Vidíme teda, že každý prepínač môže aktivovať / deaktivovať iba 1 položku.
Čo je Switch Case v Jave?
Podobne je prepínač v jazyku Java typ podmieneného príkazu, ktorý z daného vstupu aktivuje iba podmienku zhody.
Uvažujme o príklade programu, v ktorom užívateľ zadá vstup ako číselnú hodnotu (v tomto príklade iba 1 číslica) a výstupom by mal byť počet slov.
Celočíselná premenná iSwitch je vstupom do činnosti prepínača.
Rôzne dostupné možnosti (prípady na čítanie) sa potom zapíšu ako prípad
Toto bude mať potom príkaz na vykonanie, ak sa prípad a vstup do prepínača zhodujú.
Príklad prepínača Java
class SwitchBoard{public static void main(String args[]){int iSwitch=4;switch(iSwitch){case 0:System.out.println("ZERO");break;case 1:System.out.println("ONE");break;case 2:System.out.println("TWO");break;case 3:System.out.println("THREE");break;case 4:System.out.println("FOUR");break;default:System.out.println("Not in the list");break;}}}
Výkon:
FOUR
Čo sú potom tieto dve slová prerušené a predvolene ležiace tam vonku?
- Prvý „zlom“ - jednoducho vypukne zo spínacieho bloku, akonáhle je splnená podmienka.
- „Predvolené“ - vykoná sa v prípade, že sa žiadna z podmienok nezhoduje s daným vstupom.
V uvedenom príklade sú to jednoduché tlačové vyhlásenia, môžu sa však tiež vzťahovať na zložitejšie situácie, ako je volanie metódy atď.
Čo ak neposkytnete prestávku?
V prípade, že prestávka nebude poskytnutá, vykoná sa podmienky párovania, ako aj predvolená podmienka. Ak sa to stane, vaša logika bude mrzutá.
Nechám na používateľov, aby experimentovali bez použitia prestávky.
Vyhlásenie Java Switch:
- Ako štandardnú logiku programovania sa dá jednoducho dosiahnuť použitím podmienok if ... else, ale potom nebude optimalizovaná pre dobrú programátorskú prax a kód nevyzerá dobre čitateľne.
- V programoch, ktoré zahŕňajú komplikovanejšie prípady, nebudú scenáre také jednoduché a vyžadovali by volanie niekoľkých metód. Prepínač tento problém rieši a vyhýba sa niekoľkým vnoreným príkazom… else. Pri používaní príkazu if… .else sa tiež odporúča používať najvyšší stupeň očakávaný stav bude na vrchu a potom bude pokračovať ďalej vnoreným spôsobom.
- Niektoré testovacie testy preukázali, že v prípade Java s veľkým počtom iterácií je prechod rýchlejší v porovnaní s príkazmi if ... .else.
Body, ktoré je potrebné poznamenať
- Počet prípadov Java, ktoré môžete mať, nie je nijako obmedzený.
- Prepínač Java môže brať vstup iba ako celé čísla alebo znaky.
- Najnovšia verzia Java8 tiež predstavuje očakávanú podporu príkazu java switch strings.
Takže teraz do toho a zapojte si vlastný rozvádzač !!