4.1.1 while循环语句

while是最基本的循环,它的结构为:

while( 判断条件语句 ) {
  循环体语句;
}

/**扩展格式**/
   初始化语句;
 while(判断条件语句) {
    循环体语句;
    控制条件语句;
 }

注意:只要布尔表达式(判断条件语句)为 true,循环体会一直执行下去。

特点:先判断,再执行

执行流程:

  1. 执行初始化语句

  2. 执行判断条件语句,看其结果是true还是false:如果是false,循环结束;如果是true,继续执行。

  3. 执行循环体语句

  4. 执行控制条件语句

  5. 回到2继续

流程图:

代码举例:

/**
* 实现:从控制台输出100遍 "好好学习,天天向上!"
**/
public class Test {
   public static void main(String args[]) {
      int x = 1;
      while( x <= 100 ) {
         System.out.println("第" + x +"遍:好好学习,天天向上!");
         x++;
      }
   }
}

4.1.1.1 for循环 与 while循环 的区别

for循环语句和while循环语句可以等价转换,但还是有些小区别的。

  1. 使用区别:

    • 控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
  2. 场景区别:

    • for循环适合针对一个范围判断进行操作(循环次数固定的情况)

    • while循环适合判断次数不明确操作(循环次数不固定的情况)

  3. 代码举例:

    问:我国最高山峰是珠穆朗玛峰:8848m,我现在有一张足够大的纸张,厚度为:0.01m。请问,我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度?

    /*
      我国最高山峰是珠穆朗玛峰:8848m,我现在有一张足够大的纸张,厚度为:0.01m。
      请问,我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度?
      分析:
        A:定义一个统计折叠次数的变量,默认值是0
        B:最高山峰是珠穆朗玛峰:8848m这是最终的厚度
         我现在有一张足够大的纸张,厚度为:0.01m这是初始厚度
        C:我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度?
         折叠一次有什么变化呢?就是厚度是以前的2倍。
        D:只要每次变化的厚度没有超过珠穆朗玛峰的高度,就折叠,统计变量++
        E:输出统计变量。
    
        提示!此时循环次数不明确,所以选择 while循环比较合适。
    */
    class WhileTest {
      public static void main(String[] args) {
        //定义一个统计变量,默认值是0
        int count = 0;
        //最高山峰是珠穆朗玛峰:8848m这是最终的厚度
        int end = 884800;
        int start = 1;
        while(start<end) {
          //只要每次变化的厚度没有超过珠穆朗玛峰的高度,就折叠,统计变量++
          count++;
          //折叠一次有什么变化呢?就是厚度是以前的2倍。
          start *= 2;
          System.out.println("第"+count+"次厚度是"+start);
        }
        //输出统计变量。
        System.out.println("要叠"+count+"次,高度才能不低于珠穆朗玛峰的高度");
      }
    }
    

4.1.2 do-while循环语句

对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。

//基本格式:
do {
    循环体语句;
}while( 判断条件语句 );


//扩展格式:
初始化语句;
do {
    循环体语句;
    控制条件语句;
} while( 判断条件语句 );注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的值为 false

特点:先执行,再判断

执行流程:

  1. 执行初始化语句

  2. 执行循环体语句

  3. 执行控制条件语句

  4. 执行判断条件语句,看其结果是true还是false:如果是false,循环结束;如果是true,继续执行。

  5. 回到2继续

流程图:

4.2 跳转语句

4.2.1 break 语句的使用

break 语句用于终止某个语句块的执行,循环终止。

break 可用于 循环结构和switch选择结构中;

4.2.2 continue 语句的使用

continue 语句用于跳过某个循环语句块的一次执行,然后执行下轮的循环。

continue 只能用于 循环结构中...

注意!!!: break 与 continue 语句后面的代码不会被执行,顾 break 与 continue 后面不能写代码。

4.3循环的嵌套

4.3.1 从控制台打印直角三角形

4.3.2从控制台打印倒直角三角形

4.3.3从控制台打印直角三角形(每行星星数量为奇数个1、3、5、7、9...)

4.3.4从控制台打印等腰三角形

4.3.5从控制台打印菱形

4.3.6 从控制台打印九九乘法表

4.3.7 打印出圣诞树🎄(挑战,不要求)

results matching ""

    No results matching ""