Všichni v životě pravidelně používáme přepínače. Ano, mluvím o elektrických spínačích, které používáme pro naše světla a ventilátory.
Jak vidíte na následujícím obrázku, každý přepínač je přiřazen k provozu pro konkrétní elektrické zařízení.
Například na obrázku je první přepínač pro ventilátor, další pro světlo atd.
Vidíme tedy, že každý přepínač může aktivovat / deaktivovat pouze 1 položku.
Co je Switch Case v Javě?
Podobně přepínač v Javě je typ podmíněného příkazu, který aktivuje pouze podmínku shody z daného vstupu.
Uvažujme příklad programu, kde uživatel dává vstup jako číselnou hodnotu (v tomto příkladu pouze 1 číslice) a výstupem by měl být počet slov.
Celočíselná proměnná iSwitch je vstupem do práce přepínače.
Různé dostupné možnosti (případy pro čtení) se poté zapíší jako případ
To pak bude mít příkaz k provedení, pokud se případ a vstup do přepínače shodují.
Příklad Java Switch
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ýstup:
FOUR
Co jsou tedy ta 2 slova přerušená a výchozí ležet tam?
- První „rozbije“ - jednoduše vypukne z bloku spínače, jakmile je podmínka splněna.
- „Výchozí“ - Bude provedeno v případě, že žádná z podmínek neodpovídá danému vstupu.
V uvedeném příkladu se jedná o jednoduché tiskové příkazy, mohou však také odkazovat na složitější situace, jako je volání metody atd.
Co když neposkytnete přestávku?
V případě, že přestávka není poskytnuta, provede podmínky shody i výchozí podmínku. Pokud k tomu dojde, vaše logika bude mít problémy.
Nechám to na experimentech uživatelů bez použití přestávky.
Prohlášení Java Switch:
- Jako standardní programovací logiky jej lze jednoduše dosáhnout použitím podmínek if… else, ale pak nebude optimalizován pro správnou programovací praxi ani kód nevypadá čitelně.
- V programech zahrnujících složitější případy nebudou scénáře tak jednoduché a vyžadovaly by volání několika metod. Přepínač tento problém vyřeší a vyhne se několika vnořeným příkazům… else. Při používání příkazu if… .else se také doporučuje používat nejpoužívanější očekávaný stav bude nahoře a poté bude pokračovat vnořeným způsobem.
- Některé testovací testy prokázaly, že v případě Javy s velkým počtem iterací je přechod rychlejší ve srovnání s výroky if… .else.
Body k poznámce
- Počet případů java, které můžete mít, není nijak omezen.
- Přepínač Java může brát vstup pouze jako celá čísla nebo znaky.
- Nejnovější verze Java8 také zavádí očekávanou podporu příkazu java switch strings.
Takže teď do toho a zapojte si vlastní rozvaděč !!