java while语句_Java while循环语句

Java while循环语句

循环语句除了for循环之外还有while和do..while,接下来我们先来看一下while循环,首先学习while循环的语法结构,如下图所示:

c04b4fde56d3ed0b54bd730b23f873b5.png

图6-29:while循环语法结构

通过上图可以看出while循环的语法结构非常简单,它的执行顺序以及原理是这样的,先判断布尔表达式的结果,如果是true,则执行循环体,循环体结束之后,再次判断布尔表达式的结果,如果是true,再执行循环体,循环体结束之后,再判断布尔表达式的结果,直到结果为false的时候,while循环结束。如果起初第一次判断布尔表达式结果的时候就是false,那么while循环体执行次数就为0了。它的执行顺序以及原理也可以参见下图:

a5e1deb7b303ffe87c5af1bc67072bd7.png

图6-30:while循环执行顺序以及原理

通过while循环的执行原理可以得出while循环的循环体执行次数可能是0次,也可能是N次。那么要想使用while循环实现一个死循环,代码应该怎么写呢?

while(true){

System.out.println("死循环");

}

运行结果就不再给大家展示了,要使用while实现一个死循环是非常简单的,让判断条件一直为true就可以了。那么使用while循环实现输出1~10应该怎么做呢?

int i = 0;

while(i < 10){

i++;

System.out.println("i = " + i);

}

运行结果如下图所示:

c1e72e743d5afe13eab56a3033ee1ca0.png

图6-31:使用while循环输出1~10

其实使用while循环输出1~10不止有以上这一种方式,还有其他方式,例如:

int j = 1;

while(j <= 10){

System.out.println("j = " + j);

j++;

}

运行结果如下图所示:

12e08cddfa1a9e7c8c71b657021ada39.png

图6-32:使用while循环输出1~10

当然,大家还可以想想有没有其它的写法,可以自己写一写,例如:

int i = 0;

while(i < 10){

System.out.println("i = " + (++i));

}

再如:

int j = 1;

while(j <= 10){

System.out.println("j = " + j++);

}

使用while循环计算1~100所有偶数的和,应该怎么做呢?

int sum = 0;

int i = 0;

while(i <= 100){

if(i % 2 == 0){

sum += i;

}

i++;

}

System.out.println("sum = " + sum);

sum = 0;

int j = 0;

while(j <= 100){

sum += j;

j += 2;

}

System.out.println("sum = " + sum);

运行结果如下图所示:

23016833c0822a29453fb28d8445709c.png

图6-33:while循环计算1~100所有偶数和

实际上while循环可以看做是for循环的另一种变形写法,本质上是一样的,执行效率上也是一样的,硬要说它们有什么不同的话,首先while循环语法结构比for更简单,for循环的计数器比while更清楚一些,另外for循环的计数器对应的变量可以在for循环结束之后就释放掉,但是while循环的计数器对应的变量声明在while循环外面,扩大了该变量的作用域。总之,不管是for还是while,大家都必须掌握,因为这两个循环使用最多。

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页

打赏作者

泡泡SOHO

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值