Skift erklæring ind Java

⚡ Smart opsummering

Skift erklæring ind Java er en betinget konstruktion, der kun udfører den blok, der matcher en given inputværdi. Den sammenligner et heltal eller tegn med flere store og små bogstaver, bruger break til at afslutte og default for ikke-matchede værdier.

  • 🔀 Skift defineret: En betinget sætning, der kun udfører det tilfælde, der matcher inputværdien.
  • 🏷️ Sagetiketter: Hvert tilfælde angiver en værdi og et kolon, efterfulgt af sætninger, der skal udføres.
  • Pause: Forlader switch-blokken, når en matchende sag er blevet udført.
  • 🧯 Standard: Kører, når ingen af ​​de store og små bogstaver matcher den givne inputværdi.
  • Hvorfor bruge det: Renere og hurtigere end indbygget if…else for mange betingelser; accepterer heltal, tegn og (Java 8+ strenge.

Skift erklæring ind Java

Skift udsagn ind Java

Vi bruger alle kontakter regelmæssigt i vores liv. Ja, jeg taler om elektriske kontakter, vi bruger til vores lys og blæsere. Som du kan se på billedet nedenfor, er hver kontakt tildelt til at fungere for særligt elektrisk udstyr. For eksempel på billedet er den første kontakt til en ventilator, den næste til lys og så videre. Således kan vi se, at hver kontakt kun kan aktivere/deaktivere 1 element.

Java Selvstudium til Switch Case

Hvad er Switch Case i Java?

Tilsvarende, skift ind Java er en type betinget sætning, der kun aktiverer den matchende betingelse ud af det givne input. Lad os betragte eksemplet med et program, hvor brugeren giver input som en numerisk værdi (kun 1 ciffer i dette eksempel), og outputtet skal være antallet af ord. De heltalsvariabel iSwitch, er input til kontakten til at virke.

De forskellige tilgængelige muligheder (læste cases) skrives derefter som case sammen med et kolon “:”

Dette vil så have den sætning, der skal udføres, hvis sagen og input til switchen matcher.

Java Eksempel på skiftebeholder

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;
 }
}
}

Forventet output:

FOUR

Hvad gør de 2 ord, pause og standard, der ligger derude?

  • Den første "brud" - vil simpelthen bryde ud fra kontaktblokken, når en betingelse er opfyldt.
  • "Standard" - Dette vil blive udført, hvis ingen af ​​betingelserne matcher det givne input.

I det givne eksempel er disse simple printudsagn, men de kan også henvise til mere komplekse situationer som at kalde en metode osv.

Hvad hvis du ikke giver en pause?

Hvis pausen ikke er angivet, vil den udføre de matchende betingelser såvel som standardbetingelsen. Din logik vil gå galt, hvis det sker. Jeg vil overlade det til brugerne at eksperimentere uden at bruge en pause.

Java Skift erklæring

  • Som en standard programmeringslogik kan det simpelthen opnås ved at bruge if…else betingelser, men så vil det ikke være optimeret til god programmeringspraksis, og koden ser heller ikke læsbar ud.
  • I programmer, der involverer mere komplicerede tilfælde, vil scenarier ikke være så simple og ville kræve kald af flere metoder. Switch løser dette problem og undgår flere indbyggede if…else-sætninger. Når man bruger if…else, anbefales det også at bruge den mest forventede betingelse øverst og derefter fortsætte på en indbygget måde.
  • Nogle benchmarktests har vist, at skiftet i Java-tilfælde med et stort antal iterationer er hurtigere sammenlignet med if…else-sætninger.

Peger på note

  • Der er ingen begrænsning på antallet af case java du kan have.
  • Switch java kan kun modtage input som heltal eller tegn.
  • Den seneste version af Java8 introducerer også den længe ventede support til java switch strings statement.

Så gå nu videre og koble dit eget omstillingsbord!!

Ofte Stillede Spørgsmål

A Java switch-sætningen accepterer byte, short, int, char, deres wrapper-klasser, enums og (siden Java 7) strenge. Case-etiketterne skal være konstante udtryk, der er kompatible med switch-variabeltypen.

Uden pause "falder udførelsen igennem" og kører den matchende case plus alle efterfølgende cases, inklusive standard, indtil en pause eller slutningen af ​​blokken. Dette er nogle gange bevidst, men ofte en fejl.

Ja. Siden Java 7, switch-sætninger understøtter strengværdier. Switchen sammenligner strengen ved hjælp af equals()-metoden, så store og små bogstaver skal være nøjagtige strengliteraler, der skelner mellem store og små bogstaver.

AI kan analysere lange if-else-kæder, identificere en enkelt variabel, der sammenlignes, og omfaktorere dem til en renere switch-sætning med korrekte case-labels og break-sætninger, hvilket forbedrer læsbarhed og ydeevne.

Ja. AI-assisterede linters kan markere sager, der mangler et brud og muligvis falder igennem utilsigtet, og derefter foreslå at tilføje brudsætninger eller en eksplicit fall-through-kommentar for at tydeliggøre intentionen.

Opsummer dette indlæg med: