switch是一种选择语句,可以通过匹配某个条件,来执行某块代码
switch(expression){
case value:
break;//可选
default://可选
//语句
}
switch语句变量类型:可以是byte,short,int,char,或者String类型。
case的值数据类型必须与变量的类型相同。而且只能是常量或字面常量
当变量的值与case语句的值相同时,case语句之后的代码开始执行,至到break语句出现才会跳出switch语句
如果没有break语句,会继续往下执行case语句。知道break出现,或switch语句结束。
switch可以有default分支,一般是switch语句最后一个分支(可以在任何位置,但是建议放在最后)。default在没有case匹配上的时候执行。default分支不需要break语句
没有break语句时
public static void main(String[] args) {
int i = 1;
switch(i){
case 1:
System.out.println("1");
case 2:
System.out.println("2");
case 3:
System.out.println("3");
default:
System.out.println("没有匹配到");
}
}
当case匹配成功时候,会从成功的地方一直往下执行。会一直执行到break或switch语句结束。
public static void main(String[] args) {
int i = 2;
switch(i){
case 1:
System.out.println("1");
case 2:
System.out.println("2");
break;
case 3:
System.out.println("3");
default:
System.out.println("没有匹配到");
}
}
当执行到break会跳出switch
public static void main(String[] args) {
int i = 5;
switch(i){
case 1:
System.out.println("1");
case 2:
System.out.println("2");
break;
case 3:
System.out.println("3");
default:
System.out.println("没有匹配到");
}
}
当没有匹配的值得时候,会执行default语句