We gebruiken allemaal regelmatig schakelaars in ons leven. Ja, ik heb het over elektrische schakelaars die we gebruiken voor onze lichten en ventilatoren.
Zoals u op de onderstaande afbeelding kunt zien, is elke schakelaar toegewezen om te werken voor bepaalde elektrische apparatuur.
Op de foto is bijvoorbeeld de eerste schakelaar voor een ventilator, de volgende voor licht enzovoort.
We kunnen dus zien dat elke schakelaar slechts 1 item kan activeren / deactiveren.
Wat is Switch Case in Java?
Evenzo is switch in Java een type voorwaardelijke instructie die alleen de overeenkomende voorwaarde uit de opgegeven invoer activeert.
Laten we eens kijken naar het voorbeeld van een programma waarin de gebruiker invoer als een numerieke waarde opgeeft (slechts 1 cijfer in dit voorbeeld), en de uitvoer moet het aantal woorden zijn.
De integer variabele iSwitch, is de input voor de switch om te werken.
De verschillende beschikbare opties (lees gevallen) worden dan geschreven als case
Dit heeft dan de verklaring die moet worden uitgevoerd als de case en de invoer voor de switch overeenkomen.
Voorbeeld van 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;}}}
Uitgang:
FOUR
Wat zijn nu die 2 woorden break en default die daar liggen doen?
- De eerste "pauze" - zal eenvoudig uit het schakelblok breken zodra aan een voorwaarde is voldaan.
- "Standaard" - Dit wordt uitgevoerd als geen van de voorwaarden overeenkomt met de opgegeven invoer.
In het gegeven voorbeeld zijn dit eenvoudige afdrukinstructies, maar ze kunnen ook verwijzen naar meer complexe situaties zoals het aanroepen van een methode, enz.
Wat als u geen pauze voorziet?
Als de onderbreking niet is opgegeven, worden zowel de overeenkomende voorwaarden als de standaardvoorwaarde uitgevoerd. Uw logica zal in de war raken als dat gebeurt.
Ik laat het aan de gebruikers over om te experimenteren zonder een pauze in te lassen.
Java Switch-instructie:
- Als standaard programmeerlogica kan dit eenvoudig worden bereikt door if… else-voorwaarden te gebruiken, maar dan wordt het niet geoptimaliseerd voor goede programmeerpraktijken en ziet de code er ook niet leesbaar uit.
- In programma's met meer gecompliceerde gevallen, zullen scenario's niet zo eenvoudig zijn en zouden verschillende methoden moeten worden aangeroepen. Switch lost dit probleem op en vermijdt verschillende geneste if ... else statements. verwachte voorwaarde bovenaan te staan en vervolgens op een geneste manier door te gaan.
- Sommige benchmarktests hebben bewezen dat in Java-geval van een groot aantal iteraties, de switch sneller is in vergelijking met if… .else statements.
Punten om op te merken
- Er is geen limiet aan het aantal case-java dat u kunt hebben.
- Switch java kan alleen invoer accepteren als gehele getallen of tekens.
- De nieuwste versie van Java8 introduceert ook de langverwachte ondersteuning voor java switch strings statement.
Dus ga je gang en bedraad je eigen schakelbord !!