语句的结构及注意事项"/>
switch语句的结构及注意事项
switch语句
1 格式:
switch(表达式) {
case 值1:
语句1;
break;
case 值2:
语句2;
break;
…
default:
语句n+1;
break;
}
举例:
需求:键盘录入一个月份,来判断季节
3,4,5 春季
6,7,8 夏季
9,10,11 秋天
12,1,2 冬天
//导包
//(用switch判断月份)
import java.util.Scanner;//导包
class Demo{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);//创建键盘录入对象
System.out.println(“请您输入月份:”);//提示接收数据
int month= sc.nextInt();
int num = 3;
switch(month){ //使用switch语句
case 3:
case 4:
case 5:System.out.println("春季");break;
case 6:
case 7:
case 8:System.out.println("夏季");break;
case 9:
case 10:
case 11:System.out.println("秋季");break;
case 12:
case 1:
case 2:System.out.println("冬季");break;
default:System.out.println("非法数据...");break;}
}
}
格式解释说明:
switch:说明这是switch语句。
表达式:可以是 byte,short,int,char(JDK5以后可以是枚举类型(enum),JDK7以后可以是字符串(例如:String)
case:后面的值就是要和表达式进行比较的值,如果匹配成功,就执行语句;如果不匹配,继续和case语句中的值2比较.
break:表示程序到这里中断,跳出switch语句
default:如果所有的情况都不匹配,就执行这里.
2 注意事项:
(1):case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
(2):break可以省略吗?
可以省略,但是结果可能不是我们想要的。
会出现一个现象:case穿透。
建议不要省略
import java.util.Scanner;//导包
class Demo{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);//创建键盘录入对象
System.out.println(“请您输入月份:”);
int month= sc.nextInt();
int num = 3;
switch(month){
case 3:
case 4:
case 5:System.out.println("春季");case 6:
case 7:
case 8:System.out.println("夏季");case 9:
case 10:
case 11:System.out.println("秋季");case 12:
case 1:
case 2:System.out.println("冬季");default:System.out.println("非法数据...");}
}
}
(3):default一定要在最后吗?
不是,可以在任意位置。但是建议在最后。
import java.util.Scanner;//导包
class Demo{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);//创建键盘录入对象
System.out.println(“请您输入月份:”);
int month= sc.nextInt();
int num = 3;
switch(month){
default:
System.out.println(“非法数据…”);
break;
case 3:
case 4:
case 5:System.out.println("春季");break;
case 6:
case 7:
case 8:System.out.println("夏季");break;
case 9:
case 10:
case 11:System.out.println("秋季");break;
case 12:
case 1:
case 2:System.out.println("冬季");break;}
}
}
(4):switch语句的结束条件
a:遇到break就结束了
b:执行到末尾就结束了
更多推荐
switch语句的结构及注意事项
发布评论