问题阐述
在Java中,有两个带有while关键字的循环语句,即while和do?while语句,那么这两个循环语句的区别是什么?
昆明北大青鸟java培训专家解答
while循环语句会先判断循环条件,如果条件满足就执行循环,否则退出循环;而do?while循环语句会先执行一次循环,然后再判断循环条件是否满足(也就是说,即使循环条件一次都没有满足,do?while循环语句的循环体也会执行一遍)。这就是两者的本质区别。例如下面的两段代码,当x为0时,第一段代码将什么都不输出,而第二段代码将输出“x=0”
专家点评
循环语句中有两个使用while关键字的循环,分别是while与do?while语句。虽然名称类似并且都是循环语句,但是细微的差别还是要注意并且牢记的。
Java中有三种主要的循环结构:1、while 循环
while是最基本的循环,它的结构为:
//循环内容}
只要布尔表达式为 true,循环就会一直执行下去。
2、do…while 循环
对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。
do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。
do {
//代码语句
}while(布尔表达式)
注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的值为 false。
3、for循环
虽然所有循环结构都可以用 while 或者 do...while表示,但 Java 提供了另一种语句 —— for 循环,使一些循环结构变得更加简单。
for循环执行的次数是在执行前就确定的。语法格式如下:
for(初始化布尔表达式更新) {
//代码语句}
先说答案:如果1是0的话,就打印了11次了。所以必须是1。
理解这个执行过程:
在循环体内,是先执行了一次打印,再执行了i加1;
while中比较i是否小于等于10,如果满足继续执行,否则停止执行;
所以实际执行的次数是10 -1 + 1 = 10,正好10次。
如果i=0的话,就需要将while中的条件修改为while(i <10)。