在我的代码中,我有一个for循环,它遍历代码方法,直到满足for条件。
无论如何都要打破这个for循环吗?
因此,如果我们看一下下面的代码,如果我们想要在“15”时打破这个for循环怎么办?
public class Test {
public static void main(String args[]) {
for(int x = 10; x < 20; x = x+1) {
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
}
Outputs:
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
我尝试过以下无效:
public class Test {
public static void main(String args[]) {
boolean breakLoop = false;
while (!breakLoop) {
for(int x = 10; x < 20; x = x+1) {
System.out.print("value of x : " + x );
System.out.print("\n");
if (x = 15) {
breakLoop = true;
}
}
}
}
}
我尝试了一个循环:
public class Test {
public static void main(String args[]) {
breakLoop:
for(int x = 10; x < 20; x = x+1) {
System.out.print("value of x : " + x );
System.out.print("\n");
if (x = 15) {
break breakLoop;
}
}
}
}
我能够实现我想要的唯一方法是通过打破for循环,我不能替代它一段时间,如果是etc语句那么。
编辑:
这仅作为示例提供,这不是我试图将其实现的代码。我现在通过在每个循环初始化之后放置多个IF语句来解决问题。之前由于没有休息,它会跳出循环的一部分;
答案 0 :(得分:142)
break;
是您摆脱任何循环语句所需要的,例如for
,while
或do-while
。
在你的情况下,它会是这样的: -
for(int x = 10; x < 20; x++) {
// The below condition can be present before or after your sysouts, depending on your needs.
if(x == 15){
break; // A unlabeled break is enough. You don't need a labeled break here.
}
System.out.print("value of x : " + x );
System.out.print("\n");
}
答案 1 :(得分:17)
您可以使用:
for (int x = 0; x < 10; x++) {
if (x == 5) { // If x is 5, then break it.
break;
}
}
答案 2 :(得分:16)
如果由于某种原因您不想使用中断指令(例如,如果您认为它会在下次读取您的程序时中断您的阅读流程),您可以尝试以下操作:
boolean test = true;
for (int i = 0; i < 1220 && test; i++) {
System.out.println(i);
if (i == 20) {
test = false;
}
}
for循环的第二个arg是一个布尔测试。如果测试结果为真,则循环将停止。如果您愿意,您可以使用的不仅仅是简单的数学测试。 否则,正如其他人所说的那样,简单的休息也可以解决问题:
for (int i = 0; i < 1220 ; i++) {
System.out.println(i);
if (i == 20) {
break;
}
}
答案 3 :(得分:6)
怎么样
for (int k = 0; k < 10; k = k + 2) {
if (k == 2) {
break;
}
System.out.println(k);
}
另一种方式是标记为循环
myloop: for (int i=0; i < 5; i++) {
for (int j=0; j < 5; j++) {
if (i * j > 6) {
System.out.println("Breaking");
break myloop;
}
System.out.println(i + " " + j);
}
}
要获得更好的解释,您可以查看here
答案 4 :(得分:3)
public class Test {
public static void main(String args[]) {
for(int x = 10; x < 20; x = x+1) {
if(x==15)
break;
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
}