Java中Switch-Case⽤法⼩结
1、基础知识
java中switch-case语句的⼀般格式如下:
switch(参数) {
case 常量表达式1: break;
case 常量表达式2: break;
...
default: break;
}
注解:
(1)、switch接受的参数类型有10种,分别是基本类型的byte,short,int,char,以及引⽤类型的String(只
有JavaSE 7 和以后的版本可以接受String类型参数),enum和byte,short,int,char的封装类Byte,Short,Integer,Character
case 后紧跟常量表达式,不能是变量。
default语句可有可⽆,如果没有case语句匹配,default语句会被执⾏。
case语句和default语句后的代码可不加花括号。
如果某个case语句匹配,那么case后⾯的语句块会被执⾏,并且如果后⾯没有break关键字,会继续执⾏后⾯的case语句代码和default,直到遇见break或者右花括号。
2、4个测试⽤例
(1)、测试⼀
代码:
st;
public class SwitchCase01 {
public static void main(String[] args) {
int i = 5;
switch (i) {
case 1:
System.out.println("one");
break;
case 10:
System.out.println("ten");
break;
case 5:
System.out.println("five");
break;
case 3:
System.out.println("three");
break;
default:
System.out.println("other");
break;
}
/**
* 返回结果: five
*
*
*/
}
}
结果:
分析:
在本案例测试中,switch-case语句遵循其基本定义、语法,case语句、default语句没有出现错位情况,且case语句、default语句代码块中都包含break关键字,⽤于结束switch-case语句。
(2)、测试⼆
代码:
st;
public class SwitchCase02 {
public static void main(String[] args) {
int i = 5;
switch (i) {
case 1:
System.out.println("one");
case 10:
System.out.println("ten");
case 5:
System.out.println("five");
case 3:
System.out.println("three");
default:
System.out.println("other");;
}
}
}
结果:
分析:
在本案例测试中,case语句、default语句的代码块中不包含break关键字。当switch(i)中的变量在case语句中匹配后,case语句的代码块被执⾏,由于
该case语句的代码块中没有break关键字⽤于结束switch。故在switch-case中,程序继续执⾏后⾯的case语句代码和default,直到遇见break或者右花括号。
(3)、测试⼀
代码:
public static void main(String[] args) {
String x = "three";
switch (x) {
case "one":
System.out.println("switch表达式中类型可⽤String类型,输⼊字符串为:" + x);
break;
case "two":
System.out.println("switch表达式中类型可⽤String类型,输⼊字符串为:" + x);
break;
case "three":
System.out.println("switch表达式中类型可⽤String类型,输⼊字符串为:" + x);
break;
case "four":
System.out.println("switch表达式中类型可⽤String类型,输⼊字符串为:" + x);
break;
default:
System.out.println("switch表达式中类型可⽤String类型");
break;
}
}
}
结果:
分析:
在本案例测试中,主要是验证switch()-case语句中,switch()函数中的变量是否⽀持String类型。经验证,switch-case语句中,switch()函数中⽀持String类型。需要注意的是:在JDK1.7及以上版本中,Switch()函数中变量才⽀持String类型。
(4)、测试⼀
代码:
public static void main(String[] args) {
String x = "three";
//String x = "six";
System.out.println(TestSwitch(x));
}
public static String TestSwitch(String x) {
switch (x) {
case "one":
x = "1";
return "return关键字对case代码块中的影响,输出值为:" + x ;switch case判断字符串
case "two":
x = "2";
return "return关键字对case代码块中的影响,输出值为:" + x ;
case "three":
x = "3";
return "return关键字对case代码块中的影响,输出值为:" + x ;
case "four":
x = "4";
return "return关键字对case代码块中的影响,输出值为:" + x ;
default:
x = null;
return "return关键字对case代码块中的影响,输出值为:" + x ;
}
}
}
结果:
分析:
在本案例测试中,主要是验证switch()-case语句中return关键字对case代码块的影响。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。