温馨提示:本文最后更新于2025年06月12日

while循环结构

当符合指定条件时循环执行部分代码。通常用于需要循环执行固定次数的代码。

while循环的基本语法

while(条件){
  //循环执行的代码
}

当条件的值为true,即符合条件时会循环运行{}中的代码,条件的值变为false,即不再符合条件时会结束此while循环结构。如果条件的值永远为true,那么此while循环结构为死循环

while循环的使用示例

基本示例

int i = 0;
//声明变量i,值为0
while (i<5){
  //i的值小于5时,执行循环体
  System.out.println("i的值是:" + i);
  //输出i的值
  i++;
  //将i的值加1
}

解释:声明了一个变量i,初始值为数字0,当i的值小于5时会执行while循环中的代码:输出当前i的值,然后将i的值加一。此循环只会运行5次,运行完第5次时i的值变为6,不再符合条件i<5,即表达式i<5的值变为false,所以不再运行循环体。

运行结果:

while循环示例代码运行结果:依次输出i的值为0,1,2,3,4

效果就是依次输出了0,1,2,3,4五个数字

更多示例

巧妙运用循环条件可以实现更多效果。

打印020之间的偶数

int num = 2;
//定义变量num,初始值为2
while (num < 20) {
  //num小于20时执行循环体
  System.out.println(num);
  //输出num的值
  num+=2;
  //num加2,相当于num=num+2
}
while循环示例代码运行结果:依次输出num的值为2,4,6,8,10,12,14,16,18

使用嵌套while循环结构打印9×9乘法表:

int i = 1; //i用来记录行数
while (i <= 9) { //控制行数(1~9行)
  int j = 1; //j用来记录列数
  while (j <= i) { //控制每行的列数(第i行有i列)
    System.out.print(j + "*" + i + "=" + (j * i) + "\t");
    //打印算式(j * i = 结果),\t用于对齐
    j++; //列数增加
  }
  System.out.println(); //换行进入下一行
  i++; //行数增加
}
while循环示例代码运行结果:输出内容为9x9乘法表

do-while循环结构

do-while循环结构会先执行一次循环体,然后再按照条件执行while循环。

do-while循环的基本语法

do {
  //循环执行的代码
} while (条件);

程序运行后会先执行一次循环中的代码,然后再判断条件是否符合,如果符合则再次执行循环中的代码,直到条件不符合时结束此循环结构。

do-while循环的使用示例

int i = 0;
//声明变量i,初始值为0
do {
  System.out.println("i:" + i);
  i++;
} while (i<5 && i!=0);
//i小于5并且i不等于0时执行循环体
while循环示例代码运行结果:依次输出i的值为0,1,2,3,4

循环条件为i小于5并且不等于0,按while循环逻辑来讲当i等于0时不会执行循环体,所以输出i的值不可能为0。但这是一个do-while循环结构,第一次运行会无视循环条件直接运行一次循环体,而第一次运行时i的初始值正好为0,所以会输出i的值为0

死循环

while循环结构的条件判断逻辑和之前讲的if选择结构switch选择结构中的条件判断逻辑是一样的,程序只会判断条件的值是否为true,为true表示符合条件,为false表示不符合条件。也就是说如果让while循环结构的条件永远为true,那么这就是一个死循环,此循环节结构会一直运行,无法停止

我们可以将循环条件设置为1=12=2这种值永远为true的表达式或者直接将条件设置为true,这样就可以写出来一个死循环。

while循环示例代码运行结果:循环打印“这是一个死循环”,程序无法主动停止

当然一般用不到这种东西,并且还要注意避免写出来死循环导致程序卡死,也是了解即可。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容