我创建了一个带有break语句的while循环,以打印一些数字并避免出现其他数字,结果最终打印了一个比循环限制大的数字。这是代码
package examples;
public class LoopContolExamples {
public static void main(String[] args) {
int count = 0;
while (count <= 12) {
count++;
if (count == 9)
//break;
continue;
if (count % 2 == 0)
continue;
else
System.out.println(count);{
}
}
}
}
这是结果。
3
5
7
11
13
任何人都可以帮助解释发生了什么吗? 我是Java的新手,这是我用该语言编写的第一批代码之一。
答案 0 :(得分:5)
当count
等于12时,它进入了循环。
然后您立即执行count++;
,将其设置为13,同时它仍在循环中。下一次迭代将使条件失败。
答案 1 :(得分:1)
您要在递增计数后打印计数值。因此,当它进入循环时,它将是12,然后将该值增加到13,然后将其打印出来。现在,如果要打印等于或小于12的数字,则需要像这样更改代码:
int count = 0;
while (count < 12) {
count++;
if (count == 9)
//break;
continue;
if (count % 2 == 0)
continue;
else
System.out.println(count);{
}
}
答案 2 :(得分:1)
如果您希望范围为0到12,这是解决此问题的一种替代解决方案,而无需更改while循环中的条件。
int count = 0;
while (count <= 12) {
if (count == 9)
; //do nothing
if (count % 2 == 0)
; //do nothing
else
System.out.println(count); //otherwise, print the count
count++; //increment the count
}