while循环
1.while循环格式与执行流程
while循环格式
初始化语句;
while (循环条件){
循环体语句(被重复执行的代码);
迭代语句;
}
示例:
inti = 0;
while (i < 3){
System.out.println("Hello World");
i++;
}
while循环执行流程
什么时候用for循环,什么时候用while循环?
- 功能上是完全一样的,for循环能解决的while循环也能解决。
- 使用规范是:知道循环几次:使用for;不知道循环几次,建议使用:while。
2.while循环案列:珠穆朗玛峰
需求:世界上最高山峰是珠穆朗玛峰(8848.86米=8848860毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问折叠多少次,可以折成珠穆朗玛峰的高度。
思路:不知道循环多少次的情况可以选择while循环实现。
分析步骤:
- 定义变量存储珠穆朗玛峰的高度、纸张的高度。
double peakHeight = 8848860; // 山峰高度
double peakThickness = 0.1; // 纸张高度
- 使用while循环,循环条件是(纸张厚度 < 山峰高度),内部控制纸张折叠,没折一次,纸张厚度为原来的两倍,循环外定义计数变量,每折叠依次让该变量+1.
int count = 0;
while (peakThickness < peakHeight){
peakThickness *= 2;
count++;
}
实现代码:
public static void main(String[] args) {
// 需求:珠穆朗玛峰高度8848860 纸张厚度0.1 折叠纸张直到不低于珠穆朗玛峰 求折叠几次
// 1.定义变量记录山峰高度、纸张厚度
double peakHeight = 8848860; // 山峰高度
double peakThickness = 0.1; // 纸张高度
// 3.定义一个变量用于记录纸张折叠次数
int count = 0;
// 2.定义一个while循环控制纸张进行折叠
while (peakThickness < peakHeight){
//让纸张的厚度多一倍
peakThickness *= 2;
count++;
}
System.out.println("折叠次数:" + count);
System.out.println("纸张最终的厚度:" + peakThickness);
}
运行结果:
do-while循环
先执行再判断循环条件。
1.do-while循环格式
初始化语句;
do {
循环体语句;
迭代语句;
} while (循环条件);
示例:
int i = 0;
do {
System.out.println("Hello World");
i++;
} while (i < 3);
do-while循环的特点:一定会先执行依次循环体。
2.do-while循环执行流程 :
三张循环的区别
- for循环 和 while循环 (先判断后执行)
- do-while(第一次先执行后判断)
for 和 while 区别:
- for循环和while循环的执行流程是一模一样的。
- 知道循环几次使用:for循环;不知道循环几次,建议使用:while循环。
- for循环中,控制循环的变量只在循环中可以使用。while循环中,控制循环的变量在循环后还可以继续使用。