public class outloopwithlabel
} }
}
方法二:boolean,break組合:通過boolean型條件變數和break的組合,由內層迴圈在跳出(break)前改變條件變數,外層迴圈檢測條件變數改變時終止外層迴圈。
public class outloopwithbooleanbreak , , };
boolean found = false;
system.out.println("arr.length " + arr.length);
for (int i = 0; i < arr.length && !found; i++)
} }
} }
方法三:return:在內層迴圈直接跳出整個方法。
public class outloopwithreturn
system.out.println(i + " * " + j + " = " + (i * j));
} }
} }
方法四:throw exception:在內層迴圈直接丟擲異常。
public class outloopwithexception
system.out.println(i + " * " + j + " = " + (i * j));
} }
} }
總結:
1.我們可以通過在某個需要跳出的迴圈前面新增標號的形式 outer:,我們在需要跳出的地方判斷歐break outer;跳出指定位置迴圈。
2.我們可以定義乙個boolean型別的變數 boolean found = false; 在需要跳出的迴圈中加入乙個條件判斷 &&!found,然後我們在內層迴圈中如果想要跳出該迴圈,只需要把found值改為true,然後break;就行了。
3.可以在內層迴圈中自接return;即可跳出整個迴圈。
4.可以在需要跳出迴圈的地方丟擲乙個異常 throw new exception(「exception」); 簡單粗暴。
flag跳出多層迴圈
有時候我們需要從第三層的for迴圈直接跳出第二層的while迴圈,進入第一層迴圈,只用break就做不到了,這時候我們可以用flag.1 用法1 定義標識為ture,然後while flag,比如驗證登入資訊,驗證成功直接改變標識狀態為false,直接跳到第一層while迴圈 不執行else裡的 如...
跳出多層迴圈for while
break flag false for i in range 10 print 爺爺層 i for j in range 10 print 爸爸層 j if j 3 break flag true break for k in range 10 print 孫子層 k if k 2 break f...
label應用 跳出多層迴圈
一 label switch,while,for和do語句允許有乙個可選的前置標籤 label 配合break語句使用。二 應用 1.使用label跳出雙迴圈 var num 0 outpoint 這裡為label,標籤名為outpoint for var i 0 i 10 i num consol...