Java switch case用法详解
Java 中除了 if else 语句,switch case 也可以完成流程控制。
与 if 不同的是,switch case 只能完成等值判断,即条件如果是判断两个值是否相等,可以使用 switch case,如果是比较两个值的大小关系,则不能使用 switch case。
此外,switch 支持 int、short、byte、char、枚举、String 数据类型的判断,不支持 boolean 类型。
switch case 语句的基本语法如下:
用 if else 来类比,等同于
【实例】小明参加马拉松比赛,获得第 1 名奖励 2000 元,获得第 2 名奖励 1000 元,获得第 3 名奖励 500 元,否则没有奖励。请分别用 if else 和 switch case 实现这一场景。
需要注意的是,每一个 case 语句必须要跟 break,表示结束当前的代码块,如果不跟 break,则从当前的 case 语句起,后面所有的 case 判断都失效,会直接执行对应的代码块。
举个简单的例子:
与 if 不同的是,switch case 只能完成等值判断,即条件如果是判断两个值是否相等,可以使用 switch case,如果是比较两个值的大小关系,则不能使用 switch case。
此外,switch 支持 int、short、byte、char、枚举、String 数据类型的判断,不支持 boolean 类型。
switch case 语句的基本语法如下:
switch(变量){
case 值1:
代码1;
break;
case 值2:
代码2;
break;
......
default:
代码n;
break;
}
case 判断变量是否等于某个值,default 表示所有 case 都不成立的情况下所执行的代码。用 if else 来类比,等同于
if(变量==值1){
代码1;
}
else if(变量==值2){
代码2;
}
......
else{
代码n;
}
【实例】小明参加马拉松比赛,获得第 1 名奖励 2000 元,获得第 2 名奖励 1000 元,获得第 3 名奖励 500 元,否则没有奖励。请分别用 if else 和 switch case 实现这一场景。
public class Test {
public static void main(String[] args) {
int placing = 1;
if(placing == 1){
System.out.println("奖励2000元");
}else if(placing == 2){
System.out.println("奖励1000元");
}else if(placing == 3){
System.out.println("奖励500元");
}else{
System.out.println("没有奖励");
}
switch (placing) {
case 1:
System.out.println("奖励2000元");
break;
case 2:
System.out.println("奖励1000元");
break;
case 3:
System.out.println("奖励500元");
break;
default:
System.out.println("没有奖励");
break;
}
}
}
运行结果为:
奖励2000元
奖励2000元
需要注意的是,每一个 case 语句必须要跟 break,表示结束当前的代码块,如果不跟 break,则从当前的 case 语句起,后面所有的 case 判断都失效,会直接执行对应的代码块。
举个简单的例子:
public class Test {
public static void main(String[] args) {
int placing = 1;
switch (placing) {
case 1:
System.out.println("奖励2000元");
case 2:
System.out.println("奖励1000元");
case 3:
System.out.println("奖励500元");
default:
System.out.println("没有奖励");
}
}
}
运行结果为:
奖励2000元
奖励1000元
奖励500元
没有奖励
ICP备案:
公安联网备案: