一、概念
if和switch都是用来做分支语句的判断,具体使用哪个,要看需求选择
英文翻译:
if:如果
else:其他
break:终止
switch:枝条
case:具体
default:违约
不支持boolean、float、double。
使用场景选择: 区间和布尔值或者分支少用if 离散值(多而精确的值)或者分支多用switch
一、if代码示例(区间判断)
public static void main(String[] args) { Scanner scanner = new Scanner(System.in);//等待键盘输入 System.out.println("请输入你的成绩:");//提示用户输入 int i = scanner.nextInt();//键盘输入值存储到i if (i>=0 && i<60){//判断键盘输入的i有没有在这个区间,没有就继续交给下一个判断 System.out.println("您输入的成绩是"+i+",成绩合格"); }else if (i>=60 && i<=80){ System.out.println("您输入的成绩是"+i+",成绩良好"); }else if (i>80 && i<=100 ){ System.out.println("您输入的成绩是"+i+",成绩优秀"); }else//如果输入的值超出if或者else if范围,则输出下面 System.out.println("您输入的数值不在此范围"); scanner.close();//终止键盘输入等待 }
运行结果
二、switch代码示例(离散值判断)
public static void main(String[] args) { Scanner scanner = new Scanner(System.in);//等待键盘输入 System.out.println("请输入今天是星期几:");//提示用户 String i = scanner.next();//键盘输入值存储到i switch (i){//判断输入值i case "星期一"://i值和case值星期一对比,一样则输出 System.out.println("你的选择是"+i); break;//若得到结果就终止,防止穿透 case "星期二": System.out.println("你的选择是"+i); break; case "星期三": System.out.println("你的选择是"+i); break; case "星期四": System.out.println("你的选择是"+i); break; case "星期五": System.out.println("你的选择是"+i); break; case "星期六": System.out.println("你的选择是"+i); break; case "星期日": System.out.println("你的选择是"+i); break; default://输入的值都不是case里面的则终止,并给用户返回下面代码 System.out.println("你输入的不对"); } scanner.close();//终止键盘输入等待 }
运行结果
题外话:
if就像宏伟的男人,做好大概方向的判断
switch就像一个精细的女人,可以做大量的精细判断