第四小节 Java语言基础三

1. 分支结构(序)

        Scanner sc=new Scanner(System.in);
        System.out.println("输入你想去的楼层");
        int floor = sc.nextInt();
        /*
            return是直接返回,不执行后续的代码
            break只是跳到switch的外面,继续执行后面的代码
        */
        switch (floor){
            case 1:
                System.out.println("好的,即将到达1楼,请站稳扶好!");
                break;
            case 2:
                System.out.println("好的,即将到达2楼,请站稳扶好!");
                break;
            case 3:
                System.out.println("好的,即将到达3楼,请站稳扶好!");
                break;
            default:
                System.out.println("你想上天吗,哪他妈有这个楼层,不如你去地狱吧,那有18层呢!!");
                return;
        }
        System.out.println("今天是个好日子!");//如果输入的数字是除了1、2、3以外的数,那么因为return的存在,这句话不会输出
        switch...case结构:多条路

                优点:效率高,结构清晰

                缺点:只能对整数判断相等

                break关键字:跳出switch

        以下是一个用switch...case结构简单的提款机程序

import java.util.Scanner;
//命令解析程序
public class CommandBySwitch {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请选择功能: 1.存款 2.取款 3.查询余额 4.退卡");
        int command = scan.nextInt();
        switch(command){
            case 1: 
                System.out.println("存款操作...");
                break;
            case 2:
                System.out.println("取款操作...");
                break;
            case 3:
                System.out.println("查询余额操作...");
                break;
            case 4:
                System.out.println("退卡操作...");
                break;
            default:
                System.out.println("输入错误");
        }
    }
}

2. 循环结构

        循环三要素:

                                循环变量的初始化

                                循环的条件(以循环变量为基础)

                                循环变量的改变(向着循环结束的方向变)

案例演示1:输出5次相同的话

    public static void main(String[] args) {
        int i=1;
        for(;i<=5;i++){
            System.out.println("书籍是人类进步的阶梯!");
        }
    }
案例演示2:输出9的乘法表
    public static void main(String[] args) {
        for(int i=1;i<=9;i++){
            System.out.println(i+"*"+9+"="+9*i);
        }
        for(int j=1;j<=9;j=j+=2){
            System.out.println(j+"*"+9+"="+9*j);
        }
    }

while循环:先判断后执行,有可能一次都不执行

        1)语法:

                while(boolean){

                        语句块,循环体--------------反复执行的代

                }

        2)执行过程:

                判断boolean的值,若为true则执行语句块

                再判断boolean值,若为true则再执行语句块

                                                .......
                如此反复,直到boolean的值为false时候,while循环结束

案例演示1:猜数字小游戏,结合分支结构和while循环

public class Guessing {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int num = (int)(Math.random()*1000+1); //1到1000之内的随机数
        System.out.println(num); //作弊
		
        //300(大),200(小),250(对)
        System.out.println("猜吧!");
        int guess = scan.nextInt(); //1.
        while(guess!=num){ //2.
            if(guess>num){
                System.out.println("太大了");
            }else{
                System.out.println("太小了");
            }
            System.out.println("猜吧!");
            guess = scan.nextInt(); //3.
        }
        System.out.println("恭喜你猜对了!");

    }
}
do...while 循环:先执行,后判断,至少执行一次

        注意:当第一要素和第三要素的代码相同时候,首选do...while

                回顾:第一要素:循环变量的初始化

                           第二要素:循环的条件(以循环变量为基础)

                           第三要素:循环变量的改变(想着循环结束的方向变化)

案例演示:猜数字小游戏

import java.util.Scanner;
//猜数字小游戏
public class Guessing {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int num = (int)(Math.random()*1000+1); //1到1000之内的随机数
        System.out.println(num); //作弊

        //假设num=250
        //300(大),200(小),250(对)
        int guess;
        do{
            System.out.println("猜吧!");
            guess = scan.nextInt();  //1+3
            if(guess>num){
                System.out.println("太大了");
            }else if(guess<num){
                System.out.println("太小了");
            }else{
                System.out.println("恭喜你猜对了");
            }
        }while(guess!=num); //2
    }
}

3. 一些知识点的补充:

        1.任何复杂程序逻辑都可以通过三种结构来实现“

                顺序结构:从上往下逐行执行,每句都要走

                分支结构:有条件的执行某语句一次,并非每句都要走

                循环结构:有条件的执行某语句多次,并非每句都要走

        2. 变量的作用域/范围

                从变量的声明开始,到包含它的最近的大括号结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值