我正在寻找在java中重启嵌套循环的方法 基本上这就是我的想法:
for(int i = 0; i < value; i++) {
for(int j = 0;j < value2;j++) {
if(condition) {
i=-1;
break;
}
//some code here
}
}
但也许你可以提出更好的建议?
答案 0 :(得分:0)
你可以使用循环标签。
OUTER: for(int i = 0; i < value; i++) {
for(int j = 0;j < value2;j++) {
if(condition) {
continue OUTER;
}
//some code here
}
}
答案 1 :(得分:0)
试试这个:
private void ExampleLoop(boolean isStarted)
{
while(isStarted)
{
if(condition)
{
isStarted = false;
}
}
}
然后在主要:
MyClass myClass = new MyClass();
myClass.ExampleLoop(true);
//Or stop with:
myClass.ExampleLoop(false);
答案 2 :(得分:0)
Lambda函数?
class Ideone
{
static Runnable r;
static boolean brokeOnce = false;
public static void main (String[] args)
{
r = () -> {
firstloop: for (int i = 0; i <= 2; i++) {
for (int j = 0; j <= 2; j++) {
System.out.println(i + " " + j);
if (!brokeOnce && i == 1 && j == 1) {
brokeOnce = true;
r.run();
break firstloop;
}
}
}
};
r.run();
}
}
Ideone链接:http://ideone.com/EqPEJ6