Schakelinstructie in Java
Schakelinstructies in Java
We gebruiken allemaal regelmatig schakelaars in ons leven. Ja, ik heb het over elektrische schakelaars die we gebruiken voor onze lampen en ventilatoren. Zoals u op de onderstaande afbeelding kunt zien, is elke schakelaar toegewezen om te werken voor specifieke elektrische apparatuur. Bijvoorbeeld, op de afbeelding is de eerste schakelaar voor een ventilator, de volgende voor licht, enzovoort. Zo kunnen we zien dat elke schakelaar slechts 1 item kan activeren/deactiveren.
Waar zit een schakelkast in Java?
Schakel op dezelfde manier in Java is een type voorwaardelijke verklaring die alleen de overeenkomende voorwaarde uit de gegeven invoer activeert. Laten we het voorbeeld van een programma beschouwen waarbij de gebruiker invoer geeft als een numerieke waarde (in dit voorbeeld slechts 1 cijfer) en de uitvoer het aantal woorden moet zijn. De gehele variabele iSwitch is de ingang waarmee de schakelaar werkt.
De verschillende beschikbare opties (lees cases) worden vervolgens als case geschreven samen met een dubbele punt “:”
Dit zal dan de instructie hebben die moet worden uitgevoerd als de case en de invoer voor de switch overeenkomen.
Java Voorbeeld van schakelkast
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; } } }
Verwachte resultaten:
FOUR
Wat doen die twee woorden 'break' en 'default' nu precies?
- De eerste ‘breek’ – zal eenvoudigweg uit het schakelblok breken zodra aan een voorwaarde is voldaan.
- “Standaard” – Dit wordt uitgevoerd als geen van de voorwaarden overeenkomt met de gegeven invoer.
In het gegeven voorbeeld zijn dit eenvoudige print statements, maar ze kunnen ook verwijzen naar complexere situaties, zoals het aanroepen van een methode, etc.
Wat als u geen pauze voorziet?
Als de break niet wordt geleverd, worden de matching-condities en de default-conditie uitgevoerd. Uw logica raakt in de war als dat gebeurt. Ik laat het aan de gebruikers over om te experimenteren zonder een break te gebruiken.
Java Switch-instructie
- Als standaard programmeerlogica kan dit eenvoudig worden bereikt door if…else-voorwaarden te gebruiken, maar dan is het niet geoptimaliseerd voor goede programmeerpraktijken en ziet de code er ook niet leesbaar uit.
- In programma's met ingewikkeldere gevallen zijn scenario's niet zo eenvoudig en vereisen ze het aanroepen van meerdere methoden. Switch lost dit probleem op en vermijdt meerdere geneste if…else statements. Ook is het raadzaam om bij het gebruik van if…else de meest verwachte conditie bovenaan te zetten en vervolgens op een geneste manier verder te gaan.
- Uit een aantal benchmarktests is gebleken dat bij Java met een groot aantal iteraties de omschakeling sneller verloopt dan bij if…else statements.
Punten om op te letten
- Er is geen limiet op het aantal case-java dat u kunt hebben.
- Switch Java kan alleen invoer als gehele getallen of tekens accepteren.
- De nieuwste versie van Java8 introduceert ook de langverwachte ondersteuning voor de Java Switch Strings-instructie.
Dus ga je gang en bedraad je eigen schakelbord!!