【狂神说Java】顺序结构,选择结构

顺序结构

  • Java的基本结构就是顺序结构,从上到下依次执行。
  • 顺序结构是最简单的算法结构。
  • 任何一个算法都离不开的一种基本算法结构(顺序结构)。

选择结构

1. if单选择结构

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        //输入字符串
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入:");
        //nextLine用于接收输入,可接收空格
        String s  = scanner.nextLine();
        //equals判断字符串是否相等
        if (s.equals("Hello")){
            System.out.println("内容是Hello");
        }
        scanner.close();
    }
}

2. if双选择结构

// if...else...
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        //输入字符串
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入分数:");
        //nextDouble用于接收浮点数
        double s  = scanner.nextDouble();
        if (s < 60){
            System.out.println("不合格");
        }else{
            System.out.println("合格");
        }
        scanner.close();
    }
}

3. if多选择结构

//if...elseif...elseif.......else
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        //输入字符串
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入分数:");
        //nextLine用于接收输入,可接收空格
        double s = scanner.nextDouble();
        if (s >= 0 && s < 60) {
            System.out.println("不合格");
        } else if (s >= 90 && s <= 100) {
            System.out.println("优秀");
        } else if (s >= 60 && s < 90) {
            System.out.println("合格");
        } else {
            System.out.println("请输入合理的值");
        }
        scanner.close();
    }
}

4. 嵌套的if结构

// if...if
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        //输入字符串
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入分数:");
        //nextDouble用于接收浮点数
        double s  = scanner.nextDouble();
        if (s < 60){
            if (s < 0){
                System.out.println("请输入正确的值");
            }else{
                System.out.println("不合格");
            }
        }else{
            System.out.println("合格");
        }
        scanner.close();
    }
}

5. switch多选择结构

  • 多选择结构实现方式是 switch case语句
  • switch case语句判断一个变量与一系列值找那个某个值是否相等,每个值称为一个分支。
  • switch中的变量可以是:
    • byte、short、int或者char。
    • 从Java SE 7开始 switch 支持字符串String类型
    • 同时 case 标签必须为字符串常量或者字面量。
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        //输入字符串
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入等级:");
        String s = scanner.nextLine();
        switch(s){
            case "A"://匹配A
                System.out.println("优秀");
                break;//退出switch
            case "B"://匹配B
                System.out.println("良");
                //case会穿透,没有break,会接着往下走
            case "C":
                System.out.println("合格");
                break;
            default:
                //全部没有匹配到,执行deauft
                System.out.println("请输入大写A、B、C");
        }

        scanner.close();
    }
}
  • 反编译
    • .java-->.class(字节码文件)
    • 用idea反编译
  1. 打开project structure
    【狂神说Java】顺序结构,选择结构
  2. 找到Project compiler output中的路径并打开
  3. 用文本编辑器打开最后的.class文件(展示乱码)
    【狂神说Java】顺序结构,选择结构
  4. 将.class文件复制到项目目录底下,再次用idea查看
    【狂神说Java】顺序结构,选择结构
  5. 由此可见:
    switch中字符串比较的本质还是数字比较,每一个字符串都有其特定的hash值

【狂神说Java】顺序结构,选择结构

上一篇:非阻塞的同步、无锁


下一篇:委托