Switch case 语句知识点介绍
Swith case 语句支持的类型
Switch case 语句执行顺序
案例分析以及注意事项
Switch case 语句与if else 语句的区别
1. Swith case 语句支持的类型
Switch case 语句可以用来处理int,short,byte,char,(任何能转换成整型的类型)以及enum枚举类型 ,不能处理long,string类型。
java switch基础语法
switch(表达式){
case表达式常量1:语句1;
break;
case表达式常量2:语句2;
break;
......
case表达式常量n:语句n;
break;
[default:语句n+1;]
}
Switch case 语句执行顺序
一个case语句的表达式常量成为标记,代表一个case语句的入口。执行switch语句的流程是:
1. 执行switch 括号内的表达式,表达式的值,只能为int,short,byte,char,enum类型的。
2. 将表达式的值与case 语句后的表达式常量进行匹配。如果匹配成功,进入case 子句分支执行,break语句用来结束操作,跳出switch结构。
3. 如果匹配不成功,查看是否有default子句,如果没有,直接结束switch结构,如果有default子句,执行default子句。
4. default语句位置可以随意放,但是执行顺序永远分支最后。
switch表达式的值决定选择哪个case分支,如果找不到相应的分支,就直接从"default"开始输出。
当程序执行一条case语句后,因为例子中的case分支中没有break和return语句,所以程序会执行紧接于其后的语句。
练习1:
public class Switch {
public static void main(String[] args)
{
intx=0;
switch(x)
{
default:
System.out.println("default");
case 1:
System.out.println(1);
case 2:
System.out.println(2);
}
}
}
输出结果如下:
default
1
2
练习2:
ublic class Switch {
public static void main(String[] args) {
int x = 0;
switch (x) {
default:
System.out.println("default");
case 0:
System.out.println(0);
case 1:
System.out.println(1);
case 2:
System.out.println(2);
}
}
}
1
2
练习3:
public class Switch {
public static void main(String[] args) {
int x = 0;
switch (x) {
case 0:
System.out.println(0);
case 1:
System.out.println(1);
case 2:
System.out.println(2);
default:
System.out.println("default");
}
}
}
输出结果如下:
0
1
2