Java学习笔记:do_while循环

相关介绍:

在Java中,do-while循环是一种基本的控制流语句,它至少执行一次循环体,然后根据条件判断是否继续执行。这种循环结构的特点是先执行循环体,然后判断条件,如果条件为真,则继续执行循环体,否则退出循环。

do-while循环的语法如下:

复制代码
do {
    // 循环体代码
} while (条件表达式);

下面是do-while循环的执行步骤:

  1. 执行循环体中的代码。
  2. 计算条件表达式。
  3. 如果条件表达式的结果为真(非零),则返回到步骤1,继续执行循环体。
  4. 如果条件表达式的结果为假(零),则退出循环,继续执行循环后面的代码。

由于do-while循环至少执行一次循环体,即使条件表达式一开始就为假,循环体也会被执行一次。这与while循环不同,while循环在循环开始前就判断条件,如果条件不满足,则循环体一次也不会执行。

下面是一个简单的do-while循环的例子:

复制代码
int count = 0;
do {
    System.out.println("计数: " + count);
    count++;
} while (count < 10);

在这个例子中,循环体会打印当前的计数,然后将计数增加1。循环会一直执行,直到计数达到10。由于循环体至少执行一次,所以即使count一开始就大于或等于10,循环体也会被执行一次。

do-while循环适用于那些至少需要执行一次循环体的情况,例如,当需要用户输入并且至少需要输入一次时。

相关代码:

java 复制代码
/*
循环体:do-while循环
凡是循环结构,就一定会有4个要素
1.条件判断
2.循环体
3.条件控制
4.条件控制

do-while格式:
do{

}while(条件判断);
执行过程是:
说明:
do-while循环至少会执行一次循环体,
for,while,do-while循环三者之间可以相互转换
 */
import java.util.Scanner;
public class do_while_50 {
    public static void main(String[] args){
        int i = 0;
        int count = 0;
        int sum = 0;
        do{
            if(i % 2 == 0){
                System.out.println(i);
                count++;
                sum += i;
            }
            i++;
        }while(i<=100);
        System.out.println("偶数的个数为:"+count);
        System.out.println("偶数的和为:"+sum);

        int num1 = 10;
        while(num1>=10){
            System.out.println("while:hello");
            num1--;
        }
        int num2 = 10;
        do{
            System.out.println("do-while:hello");
            num2--;
        }while (num2>=10);
    }
    /*
    题目:模拟一个ATM机程序,实现存款,取款,查询余额,退出等功能。
    声明变量balance并初始化为0,用以表示银行账户的余额,下面通过ATM机程序模拟实现存款,取款操作等功能:
    1.存款:
    输入金额,并累加到balance中;
    2.取款:
    输入金额,并累减到balance中;
    3.查询余额:
    输出balance的值;
    4.退出:
    退出程序。
     */
    public static void main(String[] args){
        //1.声明变量balance并初始化为0,用以表示银行账户的余额
        double balance = 0.0;
        boolean flag = true;  //控制循环的结束

        //2.通过ATM机程序模拟实现存款,取款操作等功能
        Scanner sc = new Scanner(System.in);
        do{
            System.out.println("*************ATM*************");
            System.out.println("1.存款");
            System.out.println("2.取款");
            System.out.println("3.显示余额");
            System.out.println("4.退出");
            System.out.print("请选择(1-4)");
        //3.使用Scanner类,实现键盘输入

            int scan = sc.nextInt();

            switch(scan){
                case 1:
                    System.out.println("请输入存款金额");
                    double money = sc.nextDouble();
                    balance += money;
                    break;
                case 2:
                    System.out.println("请输入取款金额");
                    double money1 = sc.nextDouble();
                    if(money1 > balance){
                        System.out.println("余额不足,取款失败");
                    }else{
                        balance -= money1;
                        System.out.println("取款成功,剩余余额为:"+balance);
                    }
                    break;
                case 3:
                    System.out.println("账户余额为:"+balance);
                    break;
                case 4:
                    flag = false;
                    System.out.println("退出成功");
                    break;
                default:
                    System.out.println("输入有误,请重新输入");
            }

        }while(flag);

        sc.close();



        //4.根据用户选择,实现相应的功能,退出:退出程序。

    }
}
相关推荐
evans在进步36 分钟前
Tomcat NIO 工作原理详解:从 Acceptor、Poller 到容器处理链
java·tomcat·nio
推送者43 分钟前
用宠物照片制作桌宠:从AI拆帧到九点标定的本地化实现笔记
笔记·宠物·用宠物照片制作桌宠
一条破秋裤1 小时前
16_TIM编码器接口测速
笔记·stm32·学习
tju新生代魔迷1 小时前
Verilog HDL 学习笔记(十)| 第10章 时序和延迟
笔记·学习·fpga开发
幼儿园蛋小黄1 小时前
嵌入式学习总结:从入门到实战的完整路径
学习
-To be number.wan1 小时前
编译原理第三章:编译器是怎么“认字“的?——词法分析全解析
学习·编辑器
渡我白衣2 小时前
并查集:基础认识与模拟实现
android·java·javascript·数据结构·c++·算法·并查集
电商API_180079052472 小时前
电商商品价格监控工具淘宝京东商品价格抓取API项目实操分享
java·大数据·开发语言·前端·数据挖掘
zzzll11112 小时前
深度剖析:HashMap 并发死循环与 ConcurrentHashMap 两代演进全解
java·开发语言
秋名RG2 小时前
2026/5/27 生产事故复盘与整改方案
java