java-分支结构-if-else与switch-case的转换

根据键盘读取成绩输出成绩等级

例:编写程序:从键盘上读取一个学生成绩,存放在变量score中,根据score的值输出其对应的成绩等级。

score>=90       A

70<=score<90   B

60<=score<70   C

score<60    D

方式一:使用if-else

代码实现:

import java.util.Scanner;
class IfTest{
	public static void main(String[] args){	
		Scanner scan = new Scanner(System.in);
		System.out.println("请输入你的分数:");
		int num =scan.nextInt();
		if(num >= 90 && num <= 100){
		System.out.println("A");
		}
		else if(num >= 70 && num <= 90){
		System.out.println("B");
		}
		else if(num >= 60 && num <= 70){
		System.out.println("C");
		}
		else{
		System.out.println("D");
		}
	}
}

方式二:使用switch-case

代码实现:

import java.util.Scanner;
class SwitchCaseTest{
	public static void main(String[] args){
		Scanner scan = new Scanner(System.in);
		int score = scan.nextInt();
		switch(score/10){
			case 1:
			case 2:
			case 3:
			case 4:
			case 5:
				System.out.println("D");
				break;
			case 6:
				System.out.println("C");
				break;			
			case 7:
			case 8:
				System.out.println("B");
				break;
			case 9:
			case 10:
				System.out.println("A");
				break;			
		}
}
}

说明:

1.凡是可以使用switch-case(浮点型,求范围...求不了-要求高)的结构,都可以转换为if-case,反之,不成立。

2.我们在写分支结构时,在既可以使用if-else,也可以使用switch结构时(同时,switch中表达式的取值情况不多时),我们可以有先使用switch-case.原因:switch-case执行效率稍高。

原文地址:https://www.cnblogs.com/SpringChuXin/p/13417839.html