Have you ever got a situation to break outer loop when in a inner loop? I got this many times. But what could I do, the simple break statement would just break the inner loop and the outer loop continues. Now, to break it, I need to be quite smarter here, I'll have to be familiar with the unfamiliar labeled blocks. One thing you can do is create a label above outer loop and use it with break. These words might be a bit confusing, however you can easily understand the program below, I am sure.
class BreakOuterLoop
{
public static void main(String args[])
{
// Give a label
outerLoop:{
for(int i=0;i<10;i++)
{
for(int j=0;j<2;j++)
{
// Break to the label
if(j==1 && i==5) break outerLoop;
System.out.println(i+" "+j);
}
}
} // The control comes here when condition is satisfied
// Because this is the end of outerLoop block
System.out.println("End");
}
}
Output
0 0
0 1
1 0
1 1
2 0
2 1
3 0
3 1
4 0
4 1
5 0
End
I would love to hear some alternative approaches for this in the comments. Do you have any?
No comments:
Post a Comment