前言
本文介绍Java中 switch 的用法
一、switch 分支结构
基本语法:
switch(表达式){
case 常量1:
语句块1;
break;
case 常量2:
语句块2;
break;
...
case 常量n:
语句块n;
break;
default:
语句块;
break;
}
switch 流程图
二、switch注意事项和细节
- 表达式数据类型,应和case后的常量类型一致,或者是可以自动转成可以相互比较的类型,比如输入的是字符,而常量是 int
- switch(表达式) 中表达式的返回值必须是:(byte、short、int、char、enum、String)
- case 子句中的值必须是常量,而不能是变量
- default 子句是可选的,当没有匹配的 case 时,执行default
- break语句用来在执行完一个 case 分支后使程序跳出 switch 语句块;如果没有写 break,程序会顺序执行到 switch 结尾,除非遇到break。
char c = 'a';
switch(c){
case 'a':
System.out.println("ok1");
break; //(1)
case 'b':
System.out.println("ok2");
break; //(2)
default:
System.out.println("ok3");
}
当前程序会输出 ok1 ,如果去掉第一个 break,程序会输出 ok1,ok2,如果去掉第一个和第二个 break,程序会输出 ok1,ok2,ok3
三、switch 和 if 的比较
- 如果判断的具体数值不多,而且符合byte、short、int、char、enum、String 这六种类型。虽然两种语句都可以使用,建议使用switch语句。
- 其他情况:对区间判断,对结果为boolean类型判断,使用 if, if 的使用范围更广。
更多的Java知识,可以点击阅读我的其他文章 Java学习