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.根据用户选择,实现相应的功能,退出:退出程序。

    }
}
相关推荐
Yan.love16 分钟前
开发场景中Java 集合的最佳选择
java·数据结构·链表
椰椰椰耶19 分钟前
【文档搜索引擎】搜索模块的完整实现
java·搜索引擎
大G哥20 分钟前
java提高正则处理效率
java·开发语言
智慧老师1 小时前
Spring基础分析13-Spring Security框架
java·后端·spring
lxyzcm1 小时前
C++23新特性解析:[[assume]]属性
java·c++·spring boot·c++23
虾球xz1 小时前
游戏引擎学习第55天
学习·游戏引擎
V+zmm101341 小时前
基于微信小程序的乡村政务服务系统springboot+论文源码调试讲解
java·微信小程序·小程序·毕业设计·ssm
oneouto1 小时前
selenium学习笔记(二)
笔记·学习·selenium
sealaugh322 小时前
aws(学习笔记第十九课) 使用ECS和Fargate进行容器开发
笔记·学习·aws
Oneforlove_twoforjob2 小时前
【Java基础面试题025】什么是Java的Integer缓存池?
java·开发语言·缓存