Re: [问题] 两层以上的for循环break?

楼主: BruceMac (布鲁斯麦克)   2014-06-16 16:22:59
另外写个helper method, 用 return 终结是最好的作法,
第二个作法是在外层 for loop 条件多加一个 isBreak == false
以下例子应该能达到你要的效果
String s = "";
for (int i = 0; i < 10 && !s.equals("bruce"); i++) {
for (int j = 0; j < 10; j++) {
System.out.println("i = " + i + " ; j = " + j);
if (i == 5) {
s = "bruce";
break;
}
}
}
System.out.println("End of both for-loops");
// continue to do something you want
goto在 java 5 中还有作用, 现在好像被废了
不过不用也好, 免得出现意大利面式的 bug
※ 引述《henry4343 (henry)》之铭言:
: 请问一下两层以上的for循环要break有什么好方法吗?
: 目前的作法是:
: isBreak = fasle;
: for () {
: for () {
: if() {
: isBreak = true;
: break;
: }
: }
: if(isBreak) {
: break;
: }
: }
: 但如果再更多层不就要多一堆boolean判断,原本在obj-c内用goto就没这问题,
: 但java好像没有goto的功能?
: 感谢

Links booklink

Contact Us: admin [ a t ] ucptt.com