switch多选择结构
多选择结构还有一个实现方式就是switch case语句
switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
switch语句中的变量类型可以是:
1.byte、short、int或者char
2.从javaSE7开始,switch支持字符串String类型了
3.同时case标签必须为字符串常量或字面量。
语法格式如下:
switch(expression){
case value:
//语句
break;
case value:
//语句
break;
//你可以有任意数量的case语句
default://可选
//语句
}
switch代码里面char的引用格式如下:
package com.rgf.structure;
import java.util.Scanner;
public class F {
public static void main(String[] args) {
//case穿透,switch匹配一个具体的值
Scanner scanner=new Scanner(System.in);
System.out.println("请输入您的成绩级别:");
char score = scanner.next().charAt(0);//scanner引用字符的方式
switch (score){
case 'A':
System.out.println("优秀");
break;//可选
case 'B':
System.out.println("良好");
break;//可选
case 'C':
System.out.println("及格");
break;//可选
case 'D':
System.out.println("不及格");
break;//可选
default:
System.out.println("未知等级");
break;
}
}
}
运行界面如下:
switch代码里面string的引用格式如下:
package com.rgf.structure;
import java.util.Scanner;
public class G {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您的名字:");
String name = scanner.next();
//JDK的新特性,表达式结果可以是字符串!!!
//字符的本质还是数字。
//反编译 Java文件编译后生成class文件(字节码文件),
// 字节码文件我们看不懂,为了能看懂,我们需要反编译,
//反编译成我们的java程序或一些东西(工具例如IDEA)
switch (name) {
case "ypl":
System.out.println("ypl");
break;
case "rgf":
System.out.println("rgf");
break;
default:
System.out.println("名字不匹配");
break;
}
}
}
运行界面如下:
反编译的流程如下:
1.点击IDEA里面的Project Structure
2.进去之后,我们点击Project,同时复制最下面的文件路径进行搜索.
3.复制到文件搜索位置进行搜索
4.我们点击之后发现该class文件。
5.将class文件打开之后发现如下所示,无法看懂。
看不懂该文件,所以我们需要进行反编译。
我们直接复制该文件到structure包下的时候,我们发现:
发现无法直接拷贝,这个时候,我们可以通过直接搜索文件夹进行拖拽即可,如下所示:
点击包名,点击右键,找到open in,点击explorer.
找到如下目录,将class文件进行拖拽到里面即可
然后我们打开IDEA,发现在该包下面有这个class文件了,打开即可。
即反编译成功:
其中名字里面加了个name.hashCode,每个对象都有一个自己的hashCode,它是通过一些特定的算法生成的,而我们的名字,还有中文都有一个自己对应的哈希值,也可以直接把该class文件扔到IDEA里面。