关于java中break的疑问

来源:百度知道 编辑:UC知道 时间:2024/06/03 00:09:31
public static void main(String[]args){

for(int i=101;i<200;i+=2){
boolean f=true;
for (int j=2;j<i;j++){
if(i%j==0){
f=false;}break;
}
if(!f) continue;
System.out.println("i="+i);
}问下 为什么 我把break加到if的花括号外后我的 if(!f) continue;就不其作用了 而这样f=false;break}就可以 执行下面的话呢
break跳出的循环体而不是if语句

现在的 问题是 break 在 if语句外写的 话好像是返回最外面的for语句而不是我所理解的最近的循环语句

在内部for执行完以后就执行了break,这样实际上就是把外层的循环给中断了。

我是刚开始学java的,我觉得break 是跳出它所在的结构的吧,就是说如果break在{}外面的话,跳出的是它所在的for (int j=2;j<i;j++) 循环,进而就不去执行后面的语句了;而break在{}里的话,只是跳出if结构吧,所以还得执行后面的if(!f) continue;
不知对不对,大家互相交流!

break是跳出本层循环。