【Java 循环控制实例详解【While & do... while】】

Java 循环控制详解【While & do… while】

在这里插入图片描述

在 Java 中,循环控制是程序设计中非常重要的部分,主要包括 while 循环和 do...while 循环。本文将详细介绍这两种循环的基本语法、执行流程及相关示例。

1. while 循环控制

基本语法

循环变量初始化;
while(循环条件){
    循环语句;
    循环变量迭代;
} //while 循环也有四要素 只是四要素放的位置和For不一样

while 循环的四要素与 for 循环类似,只是放置的位置不同。

执行流程分析

在这里插入图片描述

  • 循环条件是返回一个布尔值的表达式。
  • while 循环是先判断条件再执行语句。

示例 1

题目:编写一个程序,使用 while 循环输出 “Hello this is Yhame.” 和一个递增的数字,从 1 到 10。循环结束后,输出当前的数字值。

public class While01 {
    public static void main(String[] args) {
        int i = 1;
        while(i <= 10) {
            System.out.println("Hello this is Yhame." + i);
            i++; // 循环迭代变量
        }
        System.out.println("推出循环,继续。。。" + i); // 这里 i = 11
    }
}

示例 2

题目:编写一个程序,使用 while 循环输出 1 到 100 之间所有能被 3 整除的数字。

public class WhileExercise01 {
    public static void main(String[] args) {
        int i = 1;
        while(i <= 100) {
            if(i % 3 == 0) {
                System.out.println("i = " + i);
            }
            i++; // 将 i++ 写在 if 语句内部,会导致 i 在其他情况下无法递增,最终引发无限循环。
        }
        System.out.println("程序继续运行");
    }
}

示例 3

题目:编写一个程序,使用 while 循环输出 40 到 200 之间的所有偶数。

public class WhileExercise02 {
    public static void main(String[] args) {
        int i = 40;
        while(i >= 40 && i <= 200) {
            if(i % 2 == 0) {
                System.out.println("i = " + i);
            }
            i++; // 不能写在 if 循环里面; 将 i++ 写在 if 语句内部,会导致 i 在奇数情况下无法递增,最终引发无限循环。
        }
        System.out.println("The process continues");
    }
}

2. do...while 循环控制

基本语法

循环变量初始化;
do {
    循环语句;
    循环变量迭代;
} while(循环条件);
  1. dowhile 是关键字,也有循环四要素,只是位置不同。
  2. do...while 先执行语句,再判断条件,意味着循环体至少执行一次。
  3. while 后面有一个分号。
  4. whiledo...while 的区别需要注意。
do … while 循环的执行流程

在这里插入图片描述

示例代码

题目:编写一个程序,使用 do…while 循环输出 “Hello This is Yhame!”,直到循环变量达到 10 次。循环结束后,输出 “The process continues!”。

public class DoWhile01 {
    public static void main(String[] args) {
        int i = 1; // 循环变量的初始化
        do {
            System.out.println("Hello This is Yhame!");
            i++; // 循环迭代变量
        } while(i <= 10);
        System.out.println("The process continues!");
    }
}
结果

在这里插入图片描述

do...while 练习 1

题目:编写一个程序,使用 do…while 循环输出从 1 到 100 的数字。

public class DoWhileExercise01 {
    public static void main(String[] args) {
        int i = 1;
        do {
            System.out.println(i);
            i++;
        } while(i >= 0 && i <= 100);
    }
}

do...while 练习 2

题目:编写一个程序,使用 do…while 循环计算并输出从 1 到 100 的数字之和。

public class DoWhileExercise02 {
    public static void main(String[] args) {
        int i = 1;
        int sum = 0;
        do {
            sum += i;
            i++;
        } while(i > 0 && i <= 100);
        System.out.println("总和为" + sum);
        System.out.println("Procedure in progress!");
    }
}

do...while 练习 3

题目:编写一个程序,使用 do…while 循环统计 1 到 200 之间能被 5 整除但不能被 3 整除的数字的个数,并输出这些数字。

public class DoWhileExercise03 {
    public static void main(String[] args) {
        // 统计1--200之间能被5整除但不能被3整除的个数
        // (1) 使用do...while输出 1--200
        // (2) 过滤能被5整除但不能被3整除的数
        // (3) 统计满足条件的个数 int count = 0;
        int i = 1;
        int count = 0;
        do {
            if(i % 5 == 0 && i % 3 != 0) {
                // i++; 这里添加i++会让程序跳不出循环
                System.out.println("i = " + i);
                count++;
            }
            i++;
        } while(i > 0 && i <= 200);
        System.out.println("这样的数一共有:" + count);
    }
}

do...while 练习 4

题目:编写一个程序,模拟一个对话,问用户是否还钱。如果用户的回答不是 ‘y’,则继续询问并输出 “Yhame使出五连鞭!”。直到用户回答 ‘y’ 为止,最后输出 “还挺懂事”。

import java.util.Scanner;

public class DoWhileExercise4 {
    public static void main(String[] args) {
        // 如果李三不还钱,则Yhame一直使出五连鞭,直到李三说还钱为止
        // [System.out.println("Yhame问:还钱吗? (y/n)")] do...while
        Scanner in = new Scanner(System.in);
        char answer = ' ';

        do {
            System.out.println("Yhame问:还钱吗?(y/n)");
            answer = in.next().charAt(0); // 获取输入的第一个字符
            System.out.println("他的回答是" + answer);
            System.out.println("Yhame使出五连鞭!");
        } while(answer != 'y');
        System.out.println("还挺懂事");
    }
}

以上是关于 Java 循环控制的详细介绍,涵盖了 whiledo...while 循环的基本语法、执行流程及示例。希望对你理解 Java 循环控制有所帮助!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yhame.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值