# Switch 结构
多选择结构还有一个方式就为switch case 结构
switch case 语句判断一个变量与一系列中的某个值是否相等,每个值称为一个分支。
switch语句中的变量类型可以是
- byte,short,int,char,
- java7以后支持了String 类型
- 同时case标签必须为字符串常量或字面量(1234567abc之类的东西)。
switch(expression){
case value:
//语句
break;//可选
case value:
//语句
break;//可选
//你可以有任意数量的case语句
default: //可选
//语句
}
case 穿透 (如果不加break就会输出后面的所有语句)
Switch匹配一个具体的值
break; 不加会输出B,C,D,E,default
package com.xin.struct;
import java.util.Scanner;
public class SwitchDemo01 {
public static void main(String[] args) {
//case 穿透 (如果不加break就会输出后面的所有语句)
// Switch匹配一个具体的值
//等级
char grade = 'A';
switch (grade){
case 'A':
System.out.println("优秀");
break; //不加会输出B,C,D,E,default
case 'B':
System.out.println("良好");
case 'C':
System.out.println("及格");
case 'D':
System.out.println("再接再厉");
case 'E':
System.out.println("挂科");
default:
System.out.println("未知等级");
}
}
}
JDK 7.0特性,表达式结果是字符串!!!!
字符本质还是数字
package com.xin.struct;
import java.util.Scanner;
public class SwitchDemo02 {
public static void main(String[] args) {
System.out.println("请输入你的名字:");
//姓名
String name = "哈哈哈";
//JDK 7.0特性,表达式结果是字符串!!!!
//字符本质还是数字
//反编译 java---class(字节码文件)----反编译(IDEA)
System.out.println("你输入的字是"+name);
switch(name){
case "牛皮":
System.out.println("你属猪");
break;
case "我的哥":
System.out.println("你是牛");
break;
case "哈哈哈":
System.out.println("菜皮");
break;
default:
System.out.println("大佬");
}
}
}