我正在测试一个java代码,我想打印1到10之间的数字
import java.util.Timer;
import java.util.TimerTask;
import java.util.Random;
public class test2
{
test2()
{
for (int i = 0; i<10; i++)
{
System.out.println(i);
if (i == 5)
break;
if (i == 6)
break;
System.out.println(i);
break;
}
}
public static void main(String[] args)
{
new test2();
}
}
如果我删除了最后一个break
,则代码可以正常运行。但如果我不删除它,只会打印数字0。为什么呢?
答案 0 :(得分:5)
break;
突破了循环。因此,最后一个没有条件的中断会导致循环在第一次迭代后终止。
答案 1 :(得分:1)
break;
留下了一个循环。
break语句有两种形式:标记和未标记。您在switch语句中看到了未标记的表单。您还可以使用未标记的中断来终止for,while或do-while循环[...]
未标记的break语句终止最内层的switch,for,while或do-while语句,但带标签的break断开了外部语句。
答案 2 :(得分:0)
当控件到达最后的'break'时,它没有找到任何条件。因此,它将强制断开循环,因此只打印'0'。
同样第一次在循环中,控件不会进入任何'if'。