【愚公系列】2021年12月 Java教学课程 14-流程控制语句之while循环

158 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第13天,点击查看活动详情

一、while循环

1.循环语句-while循环

  • while循环完整格式:

    初始化语句;
    while (条件判断语句) {
    	循环体语句;
        条件控制语句;
    }
    
  • while循环执行流程:

    ①执行初始化语句

    ②执行条件判断语句,看其结果是true还是false

    ​ 如果是false,循环结束

    ​ 如果是true,继续执行

    ③执行循环体语句

    ④执行条件控制语句

    ⑤回到②继续

  • 示例代码:

public class WhileDemo {
    public static void main(String[] args) {
        //需求:在控制台输出5次"HelloWorld"
		//for循环实现
		for(int i=1; i<=5; i++) {
			System.out.println("HelloWorld");
		}
		System.out.println("--------");
		//while循环实现
		int j = 1;
		while(j<=5) {
			System.out.println("HelloWorld");
			j++;
		}
    }
}

2.while循环案例-珠穆朗玛峰

  • 需求:世界最高山峰是珠穆朗玛峰(8844.43米=8844430毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度?
  • 示例代码:
public class WhileTest {
    public static void main(String[] args) {
		//定义一个计数器,初始值为0
		int count = 0;
		//定义纸张厚度
		double paper = 0.1;
		//定义珠穆朗玛峰的高度
		int zf = 8844430;
		//因为要反复折叠,所以要使用循环,但是不知道折叠多少次,这种情况下更适合使用while循环
		//折叠的过程中当纸张厚度大于珠峰就停止了,因此继续执行的要求是纸张厚度小于珠峰高度
		while(paper <= zf) {
			//循环的执行过程中每次纸张折叠,纸张的厚度要加倍
			paper *= 2;
			//在循环中执行累加,对应折叠了多少次
			count++;
		}
		//打印计数器的值
		System.out.println("需要折叠:" + count + "次");
    }
}

3.循环语句-dowhile循环

  • 完整格式:

    初始化语句;
    do {
    	循环体语句;
    	条件控制语句;
    }while(条件判断语句);
    
  • 执行流程:

    ① 执行初始化语句

    ② 执行循环体语句

    ③ 执行条件控制语句

    ④ 执行条件判断语句,看其结果是true还是false

    如果是false,循环结束

    如果是true,继续执行

    ⑤ 回到②继续

  • 示例代码:

public class DoWhileDemo {
    public static void main(String[] args) {
        //需求:在控制台输出5次"HelloWorld"
		//for循环实现
		for(int i=1; i<=5; i++) {
			System.out.println("HelloWorld");
		}
		System.out.println("--------");
		//do...while循环实现
		int j = 1;
		do {
			System.out.println("HelloWorld");
			j++;
		}while(j<=5);
    }
}