Java编程,switch语句,必须使用switch,不可以使用if???
发布网友
发布时间:2022-04-22 18:11
我来回答
共5个回答
热心网友
时间:2023-11-14 22:52
这个场景不适合用swith。应该用if;
switch适合值相等(具体的值)的情况,不适合范围(大于、小于等)
switch语句的语法格式为:
switch(表达式){
case 值1:
功能代码1;
[break; ]
case 值2:
功能代码2;
[break; ]
……
default:
功能代码1;
[break; ]
}
语法说明:
1、 表达式的类型只能为byte、short、char和int这4种之一。
2、 值1、值2…值n只能为常数或常量,不能为变量。
3、 功能代码部分可以写任意多句。
4、 break关键字的意思是中断,指结束switch语句,break语句为可选。
5、 case语句可以有任意多句,是标号语句。
6、 default语句可以写在switch语句中的任意位置,功能类似于if语句中的else。
执行流程:当表达式的值和对应case语句后的值相同时,既从该位置开始向下执行,一直执行到switch语句的结束,在执行中,如果遇到break语句,则结束switch语句的执行。
热心网友
时间:2023-11-14 22:52
//if——else
public void test(int score){
if(score<=100 && score >=90){
System.out.println("优秀");
}else if(score>=60 && score<90 ){
System.out.println("及格");
}else if(score>=0 && score<60){
System.out.println("不及格");
}else{
System.out.println("分数错误!");
}
}
//switch
public void test(int score){
int s = 0;
if(score>=0 && score <=100){
s = score/10;
} else{
System.out.println("分数错误!");
return;
}
switch(s){
case 10:
case 9:
System.out.println("优秀");
break;
case 8:
case 7:
case 6:
System.out.println("及格");
break;
default:
System.out.println("不及格");
}
}
热心网友
时间:2023-11-14 22:52
都可以用。switch、if都是基本的语法之一,只是说有的时候switch看起来结构更清晰。但是switch也有很多局限性,比如不能对string 进行操作,但是好像1.7或1.8已经支持,我觉得看个人喜欢。
@上官元恒zsd 忘了加break了。
int score = 80;
switch(score/10){
case 10:
case 9:
system.out.println("优秀");
break;
case 8:
case 7:
case 6:
system.out.println("及格");
break;
default:
system.out.println("不及格");
}
热心网友
时间:2023-11-14 22:53
import java.util.Scanner;
public class SwitchDemo {
/**
* @param args
*/
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("请输入分数:");
Integer score = s.nextInt();
String level = null;
switch ((Integer) score / 10) {
case 10: // 满分的处理与 case 9: 相同
case 9:
level = "优秀";
break; // 90~99
case 8:
level = "良好";
break; // 80~89
case 7:
level = "中等";
break; // 70~79
case 6:
level = "及格";
break; // 60~69
default:
level = "不及格";
}
System.out.println(level);
}
}
可以用if
热心网友
时间:2023-11-14 22:54
可以用if.当case超过一定数量的话,用ifelse会把程序显得很臃肿。所以少量的话推荐if。较多的话推荐switch。
你说的这个if和switch都可以达到