循环结构

本文详细介绍了Java编程中的循环结构,包括while、do-while和for循环的语法、执行流程以及实际应用示例。通过示例代码展示了如何使用循环进行条件判断、计算和数据处理,例如求和、判断数字特性等。同时,对比了while与do-while循环的区别,强调了循环在程序控制流中的重要性。
摘要由CSDN通过智能技术生成

循环结构

一、课前问答

1、switch支持的数据类型。

2、switch中break的作用。

3、多重if如果多个条件都成立,执行方式。

二、while循环

语法:

while(布尔条件){

// 代码块1

}

执行流程:

先判断布尔条件,如果成立,则执行代码块1,然后再判断条件,成立再执行代码块1,直到条件不成立才结束。

public class Demo01 {
    // while循环
    public static void main(String[] args) {
        int n = 0; // 初始化变量,只执行一次
        while(n < 100) { // 判断条件
            System.out.println("hello, world" + n); // 执行的内容
            n++; // 条件的变化
        }
        System.out.println("程序结束");
    }
}
public class Demo02 {
    // while循环,求1~100的和
    public static void main(String[] args) {
        int n = 1; // 初始化变量,只执行一次
        int sum = 0; // 计算和值 
        while(n <= 100) { // 判断条件
            sum = sum + n; // sum += n;
            n++; // 条件的变化
        }
        System.out.println("和值为:" + sum);
    }
}
public class Demo03 {
    // while循环,求1~100所有偶数的和
    public static void main(String[] args) {
        int n = 1; // 初始化变量,只执行一次
        int sum = 0; // 计算和值 
        while(n <= 100) { // 判断条件
            if(n % 2 == 0) {
                sum = sum + n; // sum += n;
            }
            n++; // 条件的变化
        }
        System.out.println("和值为:" + sum);
    }
}
public class Demo04 {
    // 求1~100以内所有与7相关的数字之和
    public static void main(String[] args) {
        int n = 1; // 初始化变量,只执行一次
        int sum = 0; // 计算和值 
        while(n <= 100) { // 判断条件
            if(n % 7 == 0 || n % 10 == 7 || n / 10 == 7) { // 与7相关,7,14,21,17,27,37,70,71,72
                sum = sum + n; // sum += n;
            }
            n++; // 条件的变化
        }
        System.out.println("和值为:" + sum);
    }
}
public class Demo05 {
    // 求所有的3位水仙花数
    public static void main(String[] args) {
        int n = 100;
​
        while(n < 1000) {
            int g = n % 10;
            int s = n / 10 % 10;
            int b = n / 100;
            
            if(n == g * g * g + s * s * s + b * b * b) {
                System.out.println(n + "水仙花数");
            }
            
            n++;
        }
    }
}

三、do-while循环

语法:

do{

// 代码块

}while(条件);

执行流程:

先执行一次代码块,再判断条件,如果条件成立,再次执行代码块,再次判断条件,直到条件不成立为止。

注意:

while与do-while的区别:

while循环先判断条件,执行代码块的次数是0次到多次。

do-while循环先执行一次,再判断条件,执行代码块的次数是1次到多次。

public class Demo06 {
    // 根据评语判断是否抄写代码
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        String s;
        do {
            System.out.println("抄写一遍代码");
            System.out.println("请老师输入评语:");
            s = input.next();
        }
        while(!s.equals("y"));
    }
}
public class Demo07 {
    // 猜数字
    public static void main(String[] args) {
        Random random = new Random();
        int number = random.nextInt(10) + 1; // 生成1~10的随机数
        
        Scanner input = new Scanner(System.in);
        int n;
        do {
            System.out.println("请猜一个数字:");
            n = input.nextInt();
            // 比较大小,并提示用户
            // 计次数字++
        }
        while(number != n);
        System.out.println("恭喜你猜对了");
    }
}

四、for循环

语法:

for(int i = 0; i < 10; i++){

// 代码块

}

执行流程:

  • 先执行初始化部分,即int i = 0; 只执行一次。

  • 判断条件,i < 10; 如果条件成立,则执行代码块,条件不成立则循环结束

  • 代码块执行完毕后,执行迭代部分,即i++,执行完毕后,继续判断条件,直到条件不成立。

public class Demo08 {
    // for循环
    public static void main(String[] args) {
        for(int n = 0; n < 100; n++) {
            System.out.println("hello, world" + n); // 执行的内容
        }
​
        System.out.println("程序结束");
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值