Switch多选择结构
-
多选择结构还有一个实现方式就是switch case语句
-
switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
-
Switch语句中的变量类型可以是:
-
byte,short,int或char
-
从Java SE7开始,switch支持字符串String类型
-
同时case标签必须为字符串常量或字面量
-
switch(expression){ case value: //语句 break;//可选 //你可以编写任意数量的case语句 default://可选 //语句 }
1 package Day07; 2 3 import java.util.Scanner; 4 5 public class Java07_08 { 6 public static void main(String[] args) { 7 //case穿透 switch匹配一个具体的值 8 Scanner scanner=new Scanner(System.in); 9 System.out.println("请输入等级:"); 10 String grade="0"; 11 scanner.hasNext(); 12 switch(scanner.next()){ 13 case "A": 14 System.out.println("优秀"); 15 break; 16 case "B": 17 System.out.println("良好"); 18 break; 19 case "C": 20 System.out.println("及格"); 21 break; 22 case"D": 23 System.out.println("不及格"); 24 break; 25 default: 26 System.out.println("非法成绩"); 27 break; 28 } 29 } 30 }
反编译(Java07_08为例)
Java----class(字节码文件)----反编译(IDEA)
选择project Structure,找到最下方的文件地址->复制地址,找到文件夹打开,可以看到我们的class文件
2. 打开IDEA project文件夹(show in Explorer)
3. 把对应的.class文件copy到.java文件夹内,双击打开自动生成的01文件,即可得到反编译代码
1 // 2 // Source code recreated from a .class file by IntelliJ IDEA 3 // (powered by FernFlower decompiler) 4 // 5 6 package Day07; 7 8 import java.util.Scanner; 9 10 public class Java07_08 { 11 public Java07_08() { 12 } 13 14 public static void main(String[] args) { 15 Scanner scanner = new Scanner(System.in); 16 System.out.println("请输入等级:"); 17 String grade = "0"; 18 scanner.hasNext(); 19 String var3 = scanner.next(); 20 byte var4 = -1; 21 switch(var3.hashCode()) { 22 case 65: 23 if (var3.equals("A")) { 24 var4 = 0; 25 } 26 break; 27 case 66: 28 if (var3.equals("B")) { 29 var4 = 1; 30 } 31 break; 32 case 67: 33 if (var3.equals("C")) { 34 var4 = 2; 35 } 36 break; 37 case 68: 38 if (var3.equals("D")) { 39 var4 = 3; 40 } 41 } 42 43 switch(var4) { 44 case 0: 45 System.out.println("优秀"); 46 break; 47 case 1: 48 System.out.println("良好"); 49 break; 50 case 2: 51 System.out.println("及格"); 52 break; 53 case 3: 54 System.out.println("不及格"); 55 break; 56 default: 57 System.out.println("非法成绩"); 58 } 59 60 } 61 }