标准语法
switch(/*整型、字符或字符串表达式*){
case 值1:
case值2:[break;]
case 值3:
case值n:
default:
}
语法规则
switch入口限制
switch后面括号里面的内容可以使整型
(byte/short/int/long),字符型(char),字符串(String),枚举类型(enum)
case用法
根据switch括号里面的值分别于case的后面的值做匹配,如果匹配成功则通过成功匹配点进入到switch句块中,注意:如果没有遇到break;程序将继续向下执行,并且不再重新匹配其他case值。
-break用法
当程序运行到break时,可以跳出当前的语句块
-default用法
当匹配完所有case分支的之后,如果仍未发现匹配成功,则执行default中的语句,类似选择语句中else的使用。
default在C语言中用法有所不同,在C语言中
default无论是否匹配成功,只要语句块运行到当前行,那么default中的语句就会被执行。
案例:
成绩等级划分
public static void main(string[] args){
int score=90;
//100-90A
//89-80B
//79-70C
//69-60D
//<60 E
int tmp =score/10;
switch(tmp){
case 10:
case 9:
System.out.print1n("A");break;
case 8:
System.out.print1n("B");break;
case 7:
System.out.print1n("c");break;
case 6:
System.out.print1n("D");break;
case5:case4:case3:case2:
case 1: case 0:
System.out.print1n("E");break;
default:
System.outprint1n("ERROR")
}
}
计算器基本功能
public static void main(string[] args){
int num1 =9; int num2=0; char c='&';
switch(c){
case'+'
System.out.print1n(num1+num2);break;
case'-':
System.out.print1n(num1-num2);break;
case'*'
System.out.print1n(num1*num2);break;
case'/'
if(num2 != 0){
System.out.print1n(num1/num2);break;
}e1se{
system.out.print1n("除零错误!~!~");
return;
}
default:
system.out.print1n("不知道你要算什么!~");
}
}