注意事项:
1、switch表达式支持的类型:int、short、byte、char、枚举、String;
2、case后面的值一定要是常量,不能用变量代替;
3、有些case的后面要有break,也有没有break的情况;
4、default的位置可以改变,但要有break;
例1:输入名次,输出奖励
public class SwitchText1 {
public static void main(String[] args) {
// 输入考试名次
int x=2;
switch (x){
case 1:
System.out.println("试卷一套");
break;
case 2:
System.out.println("奶茶一杯");
break;
case 3:
System.out.println("本子一个");
break;
default:
System.out.println("继续努力");
break;
}
}
}
如果没有break:
会看到,从第二名往后都被打印了出来。
可以省略break的代码:
这种情况下只要在,最后一句上面写break就可以了,例如,二等奖的最后一名加break,三等奖的最后一名加break。
例2:一等奖一名,二等奖两名,三等奖三名
public class SwitchText1 {
public static void main(String[] args) {
// 输入考试名次
int x=2;
switch (x){
case 1:
System.out.println("试卷一套");
break;
case 2:
case 3:
System.out.println("奶茶一杯");
break;
case 4:
case 5:
case 6:
System.out.println("本子一个");
break;
default:
System.out.println("继续努力");
break;
}
}
}
default可以变换位置,且不影响整体结构,但是要加break;
public class SwitchText1 {
public static void main(String[] args) {
// 输入考试名次
int x=10;
switch (x){
case 1:
System.out.println("试卷一套");
// break;
case 2:
case 3:
System.out.println("奶茶一杯");
break;
case 4:
case 5:
case 6:
System.out.println("本子一个");
break;
default:
System.out.println("继续努力");
break;
}
}
}
把它换个位置:
public class SwitchText1 {
public static void main(String[] args) {
// 输入考试名次
int x=10;
switch (x){
default:
System.out.println("继续努力");
break;
case 1:
System.out.println("试卷一套");
break;
case 2:
case 3:
System.out.println("奶茶一杯");
break;
case 4:
case 5:
case 6:
System.out.println("本子一个");
break;
}
}
}
switch语句虽然用的不多,但是也要会,因为在某些场合下用switch比if语句用法简单,快捷