logo

Java Switch Statement

Java skifte erklæring udfører én sætning fra flere forhold. Det er ligesom hvis-andet-hvis stigeerklæring. Switch-sætningen fungerer med byte, short, int, long, enum-typer, String og nogle wrapper-typer som Byte, Short, Int og Long. Siden Java 7 kan du bruge strenge i skifteerklæringen.

Med andre ord tester switch-sætningen ligheden af ​​en variabel mod flere værdier.

Punkter at huske

  • Der kan være et eller N antal kasusværdier for et skifte udtryk.
  • Værdien af ​​store og små bogstaver skal kun være af switch-udtrykstypen. Sagsværdien skal være bogstavelig eller konstant . Det tillader det ikke variabler .
  • Sagsværdierne skal være enestående . I tilfælde af duplikatværdi giver det kompileringstidsfejl.
  • Java switch-udtrykket skal være af byte, kort, int, lang (med sin Wrapper-type), optællinger og snor .
  • Hver sagsudsagn kan have en pauseerklæring hvilket er valgfrit. Når kontrollen når til pauseerklæring , springer den kontrollen efter skifteudtrykket. Hvis en break-sætning ikke findes, udfører den den næste sag.
  • Sagsværdien kan have en standard etiket hvilket er valgfrit.

Syntaks:

 switch(expression){ case value1: //code to be executed; break; //optional case value2: //code to be executed; break; //optional ...... default: code to be executed if all cases are not matched; } 

Flowchart af Switch Statement

junit test cases
flow of switch-erklæring i java

Eksempel:

SwitchExample.java

 public class SwitchExample { public static void main(String[] args) { //Declaring a variable for switch expression int number=20; //Switch expression switch(number){ //Case statements case 10: System.out.println('10'); break; case 20: System.out.println('20'); break; case 30: System.out.println('30'); break; //Default case statement default:System.out.println('Not in 10, 20 or 30'); } } } 
Test det nu

Produktion:

 20 

Eksempel på findemåned:

SwitchMonthExample.javaHTML

 //Java Program to demonstrate the example of Switch statement //where we are printing month name for the given number public class SwitchMonthExample { public static void main(String[] args) { //Specifying month number int month=7; String monthString=''; //Switch statement switch(month){ //case statements within the switch block case 1: monthString='1 - January'; break; case 2: monthString='2 - February'; break; case 3: monthString='3 - March'; break; case 4: monthString='4 - April'; break; case 5: monthString='5 - May'; break; case 6: monthString='6 - June'; break; case 7: monthString='7 - July'; break; case 8: monthString='8 - August'; break; case 9: monthString='9 - September'; break; case 10: monthString='10 - October'; break; case 11: monthString='11 - November'; break; case 12: monthString='12 - December'; break; default:System.out.println('Invalid Month!'); } //Printing month of the given number System.out.println(monthString); } } 
Test det nu

Produktion:

 7 - July 

Program til at kontrollere vokal eller konsonant:

Hvis tegnet er A, E, I, O eller U, er det vokal ellers konsonant. Der skelnes ikke mellem store og små bogstaver.

string sammenligne i java

SwitchVowelExample.java

 public class SwitchVowelExample { public static void main(String[] args) { char ch='O'; switch(ch) { case 'a': System.out.println('Vowel'); break; case 'e': System.out.println('Vowel'); break; case 'i': System.out.println('Vowel'); break; case 'o': System.out.println('Vowel'); break; case 'u': System.out.println('Vowel'); break; case 'A': System.out.println('Vowel'); break; case 'E': System.out.println('Vowel'); break; case 'I': System.out.println('Vowel'); break; case 'O': System.out.println('Vowel'); break; case 'U': System.out.println('Vowel'); break; default: System.out.println('Consonant'); } } } 

Produktion:

 Vowel 

Java Switch Statement er faldende

Java-switch-sætningen er faldende. Det betyder, at den udfører alle udsagn efter den første kamp, ​​hvis der ikke er en pauseudsagn.

Eksempel:

SwitchExample2.java

 //Java Switch Example where we are omitting the //break statement public class SwitchExample2 { public static void main(String[] args) { int number=20; //switch expression with int value switch(number){ //switch cases without break statements case 10: System.out.println('10'); case 20: System.out.println('20'); case 30: System.out.println('30'); default:System.out.println('Not in 10, 20 or 30'); } } } 
Test det nu

Produktion:

binært træ i java
 20 30 Not in 10, 20 or 30 

Java Switch Statement med streng

Java giver os mulighed for at bruge strenge i switch-udtryk siden Java SE 7. Kasussætningen skal være streng literal.

Eksempel:

SwitchStringExample.java

instans af i java
 //Java Program to demonstrate the use of Java Switch //statement with String public class SwitchStringExample { public static void main(String[] args) { //Declaring String variable String levelString='Expert'; int level=0; //Using String in Switch expression switch(levelString){ //Using String Literal in Switch case case 'Beginner': level=1; break; case 'Intermediate': level=2; break; case 'Expert': level=3; break; default: level=0; break; } System.out.println('Your Level is: '+level); } } 
Test det nu

Produktion:

 Your Level is: 3 

Java Nested Switch Statement

Vi kan bruge switch-sætning i andre switch-sætninger i Java. Det er kendt som indlejret switch-sætning.

Eksempel:

NestedSwitchExample.java

 //Java Program to demonstrate the use of Java Nested Switch public class NestedSwitchExample { public static void main(String args[]) { //C - CSE, E - ECE, M - Mechanical char branch = 'C'; int collegeYear = 4; switch( collegeYear ) { case 1: System.out.println('English, Maths, Science'); break; case 2: switch( branch ) { case 'C': System.out.println('Operating System, Java, Data Structure'); break; case 'E': System.out.println('Micro processors, Logic switching theory'); break; case 'M': System.out.println('Drawing, Manufacturing Machines'); break; } break; case 3: switch( branch ) { case 'C': System.out.println('Computer Organization, MultiMedia'); break; case 'E': System.out.println('Fundamentals of Logic Design, Microelectronics'); break; case 'M': System.out.println('Internal Combustion Engines, Mechanical Vibration'); break; } break; case 4: switch( branch ) { case 'C': System.out.println('Data Communication and Networks, MultiMedia'); break; case 'E': System.out.println('Embedded System, Image Processing'); break; case 'M': System.out.println('Production Technology, Thermal Engineering'); break; } break; } } } 
Test det nu

Produktion:

indeks over java
 Data Communication and Networks, MultiMedia 

Java Enum i Switch Statement

Java giver os mulighed for at bruge enum i switch statement. Java enum er en klasse, der repræsenterer gruppen af ​​konstanter. (uforanderlige såsom endelige variabler). Vi bruger søgeordet enum og sætter konstanterne i krøllede parenteser adskilt af komma.

Eksempel:

JavaSwitchEnumExample.java

 //Java Program to demonstrate the use of Enum //in switch statement public class JavaSwitchEnumExample { public enum Day { Sun, Mon, Tue, Wed, Thu, Fri, Sat } public static void main(String args[]) { Day[] DayNow = Day.values(); for (Day Now : DayNow) { switch (Now) { case Sun: System.out.println('Sunday'); break; case Mon: System.out.println('Monday'); break; case Tue: System.out.println('Tuesday'); break; case Wed: System.out.println('Wednesday'); break; case Thu: System.out.println('Thursday'); break; case Fri: System.out.println('Friday'); break; case Sat: System.out.println('Saturday'); break; } } } } 
Test det nu

Produktion:

 Sunday Monday Twesday Wednesday Thursday Friday Saturday 

Java Wrapper i Switch Statement

Java giver os mulighed for at bruge fire indpakningsklasser : Byte, Short, Integer og Long i switch-sætning.

Eksempel:

WrapperInSwitchCaseExample.java

 //Java Program to demonstrate the use of Wrapper class //in switch statement public class WrapperInSwitchCaseExample { public static void main(String args[]) { Integer age = 18; switch (age) { case (16): System.out.println('You are under 18.'); break; case (18): System.out.println('You are eligible for vote.'); break; case (65): System.out.println('You are senior citizen.'); break; default: System.out.println('Please give the valid age.'); break; } } } 
Test det nu

Produktion:

 You are eligible for vote.