Java基础语法2

发布时间 2023-03-22 21:17:19作者: 忆梦寻尘

顺序结构

  • 程序从上到下依次地执行,中间没有任何判断和跳转。
        System.out.println("程序开始");

        System.out.println("起床");
        System.out.println("洗漱");
        System.out.println("开车");
        System.out.println("工作");
        System.out.println("吃饭");
        System.out.println("下班");
        System.out.println("睡觉");

        System.out.println("程序结束");



分支结构

  • 根据所给的条件,选择性地执行某段代码。

if

    //if格式一
    int age = 22;

    if (age >= 18) {
        System.out.println("已经成年");
    }
	
    //if格式二
    int age = 15;

    if (age >= 18) {
        System.out.println("已经成年");
    } else {
        System.out.println("未成年不得观看!");
    }

    //if格式三,我更改了国家法定成年年龄
    int age = 22;

    if (age >= 60) {
        System.out.println("老年");
    } else if (age >= 40) {
        System.out.println("壮年");
    } else if (age >= 20) {
        System.out.println("青年");
    } else {
        System.out.println("未成年");
    }

if嵌套

    int age = 34234;

    if (age < 0 || age >= 150) {
        System.out.println("妖怪!");
    } else {
        if (age >= 60) {
            System.out.println("老年");
        } else if (age >= 40) {
            System.out.println("壮年");
        } else if (age >= 20) {
            System.out.println("青年");
        } else {
            System.out.println("未成年");
        }
    }



switch

        String color = "green";
        switch (color) {
            case "red":
                System.out.println("红色");
                break;
            case "yellow":
                System.out.println("黄色");
                break;
            case "green":
                System.out.println("绿色");
                break;
            case "white":
                System.out.println("白色");
                break;
            default:
                System.out.println("花色");
                break;
        }



switch穿透性

        int num = 1;
        switch (num) {
            case 1:
                System.out.println(1);
            case 2:
                System.out.println(2);
            case 3:
                System.out.println(3);
        }

总结:if和switch很像,具体什么场景使用什么语句?

  • 判断的值不多或者是固定的值,建议使用switch
  • 对于区间判断,推荐if



Scanner

import java.util.Scanner;//1.导包

        //2.创建扫描器对象
        Scanner sc = new Scanner(System.in);

        System.out.print("输入你名字:");
        String name = sc.next();

        System.out.print("输入你年龄:");
        int age = sc.nextInt();

        System.out.print("输入你的性别:");
        char gender = sc.next().charAt(0);

        System.out.print("输入你的成绩:");
        double score = sc.nextDouble();

        System.out.println("名字 = " + name);
        System.out.println("年龄 = " + age);
        System.out.println("性别 = " + gender);
        System.out.println("成绩 = " + score);



循环结构

  • 根据循环条件,重复性的执行某段代码。

while

        int i = 1;
        while (i<=5){
            System.out.println("hi");
            i++;
        }



do while

        int i = 1;
        do {
            System.out.println("hi");
            i++;
        } while (i <= 5);

总结:while 和 do-while 的区别?

  • while:先判断循环条件,再执行循环体
  • do-while:先执行循环体,再判断循环条件,至少执行一次



for

image-20230322115856188

        for (int i = 1; i <= 5; i++) {
            System.out.println("hi");
        }



练习题:水仙花

所谓水仙花数是指一个3位数,其各个位上数字立方和等于其本身。

        for (int i = 100; i < 1000; i++) {
            int ge = i % 10;
            int shi = i / 10 % 10;
            int bai = i / 100;
            if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai) {
                System.out.println(i);
            }
        }



特殊流程控制