※ 引述《henry4343 (henry)》之銘言:
: 請問一下兩層以上的for迴圈要break有什麼好方法嗎?
: 目前的作法是:
: isBreak = fasle;
: for () {
: for () {
: if() {
: isBreak = true;
: break;
: }
: }
: if(isBreak) {
: break;
: }
: }
: 但如果再更多層不就要多一堆boolean判斷,原本在obj-c內用goto就沒這問題,
: 但java好像沒有goto的功能?
: 感謝
或許可以把判斷直接寫進 for () ?
for (...; ... && !isBreak; ...) {
...
for () {
...
}
}
第二圈跟原本的一樣用 break, 只是把後面的 if 搬上去 @@
其實前面在想的就是避免這個flag 不過我是覺得都還可以
作者: longlongint (華哥爾) 2014-06-13 16:24:00
寫成函數直接return吧
filter, map, reduce, flatMap ...重構…一次做一件事…xd
每層迴圈一定代表某見事情,分層抽出去 return 就好