Java Switch Statement教程|在Java示例中切换语句
Java Switch Statement教程| Java示例中的Switch语句是今天的主题。 Java switch语句从多个条件执行一个语句。它就像一个if-else-if阶梯语句。 switch语句适用于byte,short,int,long,enum类型,String和一些盘点类型,如Byte,Short,Int和Long。它附带Java 7,您可以在switch语句中使用字符串。
内容概述
- 1 Java Switch语句
- 2#Java中Switch语句的关键点
- 3 #Switch声明是落空的
- 4 #Java嵌套交易所声明
- 5 #Java Enum在Switch语句中
- 6 #Java Wrapper在Switch语句中
Java Switch语句
switch语句是多路分支语句。它提供了一种根据表达式的值将执行分派给代码的不同部分的简便方法。表达式可以是byte,short,char和int原始数据类型。它也适用于枚举类型(java中的Enums),String类和Wrapper类。
#Kava中的Switch语句的关键点
- 对于switch表达式,可以有一个或N个case值。
- 案例值必须仅为switch表达式类型。案例值必须是文字或常量。它不允许变量。
- 案例值必须是唯一的。如果值重复,则呈现编译时错误。
- Java开关表达式必须是byte,short,int,long(带有Wrapper类型),枚举和字符串。
- 每个case语句都可以包含break语句,这是可选的。当控制到达break语句时,它会在切换表达式后跳转控件。如果未找到break语句,则执行下一个案例。
- 案例值可以具有可选的默认标签。
请参阅以下语法。
switch(expression){ case value1: break; //optional case value2: break; //optional default: code will be executed if all the cases are not matched; }
请参阅以下代码示例。
class Conditionals { public static void main(String() args) { String character = "Eleven"; String StrangerThings; // switch statement with int data type switch (character) { case "Steve": StrangerThings = "Joe"; break; case "Robin": StrangerThings = "Maya"; break; case "Mike": StrangerThings = "Finn"; break; case "Joyce": StrangerThings = "Winona"; break; case "Eleven": StrangerThings = "Millie Bobby Brown"; break; case "Dustin": StrangerThings = "Gaten"; break; case "Will": StrangerThings = "Noah"; break; default: StrangerThings = "Invalid day"; break; } System.out.println(StrangerThings); } }
请参阅以下输出。
➜ java javac Conditionals.java ➜ java java Conditionals Millie Bobby Brown ➜ java
#Switch声明是落空的
Java switch语句是一个漏洞。这意味着如果break语句不存在,它将在第一次匹配后执行所有语句。请参阅以下代码示例。
class Conditionals { public static void main(String() args) { int number = 50; // switch expression with int value switch (number) { // switch cases without break statements case 10: System.out.println("10"); case 50: System.out.println("50"); case 60: System.out.println("60"); default: System.out.println("Not in 10, 50 or 60"); } } }
请参阅以下输出。
➜ java java Conditionals 50 60 Not in 10, 50 or 60 ➜ java
因此,当它获得第一个匹配然后发现时,它将执行以下所有情况。
在上述情况下,其值为10将不会执行,因为它与50不匹配。
#Java嵌套开关语句
请参阅以下嵌套切换语句示例。
class Conditionals { public static void main(String args()) { char branch = 'S'; int schoolYear = 11; switch (schoolYear) { case 10: System.out.println("All subjects"); break; case 11: switch (branch) { case 'C': System.out.println("Accounting"); break; case 'S': System.out.println("Chemistry"); break; case 'A': System.out.println("Philosophy"); break; } break; } } }
请参阅以下输出。
➜ java javac Conditionals.java ➜ java java Conditionals Chemistry ➜ java
在上面的例子中,我们选择了第11年和角色S,这就是它返回科学的原因。
Switch语句中的#Java Enum
Java允许我们在switch语句中使用enum。
请参阅以下编程示例。
class Conditionals { 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; } } } }
请参阅以下输出。
➜ java javac Conditionals.java ➜ java java Conditionals Sunday Monday Tuesday Wednesday Thursday Friday Saturday ➜ java
Switch语句中的#Java Wrapper
Java允许我们在switch语句中使用四个盘点类:Byte,Short,Integer和Long。
class Conditionals { 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; } } }
查看输出。
➜ java javac Conditionals.java ➜ java java Conditionals You are eligible for vote. ➜ java
最后,Java示例中的Switch语句结束了。