Loading

while循环

循环语句-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++;
        }
    }
}

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 + "");
    }
}
View Code

循环语句-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);
    }
}

三种循环的区别

  • 三种循环的区别

    • for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)

    • do...while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)

  • for循环和while的区别

    • 条件控制语句所控制的自增变量,因为归属for循环的语法结构中,在for循环结束后,就不能再次被访问到了

    • 条件控制语句所控制的自增变量,对于while循环来说不归属其语法结构中,在while循环结束后,该变量还可以继续使用

  • 死循环(无限循环)的三种格式

    1. for(;;){}

    2. while(true){}

    3. do {} while(true);

死循环

for死循环格式 :
for(;;){

}

while死循环格式 :

while(true){

}

do..while死循环格式 :

do{

}while(true);

死循环案例

/*
    问题: 死循环有应用场景吗?
        
                例如: 键盘录入一个1-100之间的整数
                
                顾虑: 键盘录入是用户操作的, 用户就可能会出现一些误操作的现象
        
*/
public static void main(String[] args) {
    /*
        for(;;){
            System.out.println("我停不下来了~");
        }
        */

    /*
        while(true){
            System.out.println("我停不下来了~");
        }
        */

    do{
        System.out.println("我停不下来了~");    
    }while(true);

    System.out.println("看看我能被执行吗?~");    // 无法访问的语句
}
}
View Code

 

posted @ 2021-09-30 22:32  1640808365  阅读(517)  评论(0编辑  收藏  举报