Java:循环结构:while循环、珠穆朗玛峰案例

问:while循环格式,执行流程是什么样的?

循环格式如下:


初始化语句;

while(循环条件){

       循环体语句;

       迭代语句;

}

代码演示如下:

public class WhileTest {
    public static void main(String[] args) {
        int i = 0;
        while (i<3){
            System.out.println("HelloWorld!");
            i++;
        }
    }
}

问:什么时候用for循环,什么时候用while循环?

  • 功能上是完全一样的,for能解决的while也能解决,反之亦然。
  • 使用规范是:知道循环几次:使用for;不知道循环几次建议使用:while。

案例:珠穆朗玛峰(世界最高峰8848.86米)

 

需求:世界最高山峰是珠穆朗玛峰(8848.86=8848860毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问,折叠多少次,可以折成珠穆朗玛峰的高度。

思路:不清楚要循环多少次的情况可以选择用while实现。

分析步骤:

  1. 定义变量存储珠穆朗玛峰的高度、纸张的高度。
  2. 使用while循环,循环条件是(纸张厚度<山峰高度),内部控制纸张折叠,每折叠一次,纸张厚度为原来两倍,循环外定义计数变量,每折叠依次让该变量+1

实现代码如下:

public class WhileTest6 {
    public static void main(String[] args) {
        //1.定义变量记录山峰的高度 纸张的厚度
        double peakHeight = 8848860;
        double paperThickness = 0.1;

        //3.定义一个变量用于记录纸张折叠的次数
        int count = 0;

        //2.定义一个while循环控制纸张进行折叠
        while (paperThickness<peakHeight){
            //让纸张的厚度多一倍
            paperThickness *= 2;
            count++;
        }
        System.out.println("折叠的次数:"+count);
        System.out.println("纸张的最终厚度:"+paperThickness);
    }
}

for和while使用总结

  1. while能做的for都能实现;
  2. 但是如果一开始不知道循环次数的情况下,建议使用while循环解决更专业。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值