欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Day19-Switch多选择结构与反编译初步了解

程序员文章站 2022-06-19 15:44:30
switch多选择结构多选择结构还有一个实现方法就是switch case 语句switch case 语句判断一个变量与一系列值中某个值是否相等,每个值成为一个分支switch 语句中的变量类型可以是:byte、short、int或者char从Java SE 7 开始switch 支持字符串 String 类型同时 case 标签必须为字符串常量或字面量语句:swtich (expression){ case value: //语句 break;//可选...

switch多选择结构


多选择结构还有一个实现方法就是switch case 语句

switch case 语句判断一个变量与一系列值中某个值是否相等,每个值成为一个分支

switch 语句中的变量类型可以是:

  1. byte、short、int或者char
  2. 从Java SE 7 开始
  3. switch 支持字符串 String 类型
  4. 同时 case 标签必须为字符串常量或字面量

语句:

swtich (expression){
    case value:
    //语句
    break;//可选
    case value :
    //语句
    break;//可选
    //你可以有任意数量的case语句
    default://可选  如果都不等于的话
    //语句
}

代码:SwitchDemo01

package com.pab.struct;

public class SwitchDemo01 {
    public static void main(String[] args) {
        //char 穿透   break 结束  switch 匹配一个具体的值
        char grade = 'F';//char 字符类型  这里的grade变量的值可以任意更换

        switch (grade){
            case 'A':
                System.out.println("成绩优秀");
                break;//不写会一直执行到最后
            case 'B':
                System.out.println("成绩良好");
                break;
            case 'C':
                System.out.println("成绩普通");
                break;
            case 'D':
                System.out.println("及格");
                break;
            case 'E':
                System.out.println("挂科");
                break;
            default:
                System.out.println("等级未知");
        }


    }
}

代码:SwitchDemo02

package com.pab.struct;

public class SwitchDemo02 {
    public static void main(String[] args) {
        //JDK7特性,表达式结果可以是字符串
        //字符的本质还是数字

        //反编译  java--class(字节码文件)--反编译(IDEA)
        String name = "Pab";

        switch(name){
            case "jojo":
                System.out.println("您不是jojo");
                break;
            case "Pab":
                System.out.println("您就是本人!");
                break;
            default:
                System.out.println("恭喜你 我不认识");

        }
    }
}

Java反编译(这里我用的IDEA)

  1. 找到 文件.class 复制
  2. 在IDEA中点击任意的包
  3. 右键包 open in Explorer
  4. 把要反编译的文件给粘贴进去

展示SwitchDemo02反编译之后的效果

//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package com.pab.struct;

public class SwitchDemo02 {
    public SwitchDemo02() {
    }

    public static void main(String[] args) {
        String name = "Pab";
        byte var3 = -1;
        switch(name.hashCode()) {
        case 79985:
            if (name.equals("Pab")) {
                var3 = 1;
            }
            break;
        case 3267914:
            if (name.equals("jojo")) {
                var3 = 0;
            }
        }

        switch(var3) {
        case 0:
            System.out.println("您不是jojo");
            break;
        case 1:
            System.out.println("您就是本人!");
            break;
        default:
            System.out.println("恭喜你 我不认识");
        }

    }
}

本文地址:https://blog.csdn.net/qq_52857236/article/details/111053443

相关标签: 自学 java