我在搜索「如何在for循環中給出多個條件?」但是沒有直接的答案。在for循環中給出多個條件
經過一番研究,我找到了正確的方法。條件不能用逗號(,)或分號(;)分隔。我們可以使用運算符將兩個條件結合在一起。
爲(初始化;條件1 & &條件2;增量)
例子:
for(int j= 0; j < 6 && j < ((int)abc[j] & 0xff) ; j++)
{
//
}
希望這有助於新的Java開發人員。
我在搜索「如何在for循環中給出多個條件?」但是沒有直接的答案。在for循環中給出多個條件
經過一番研究,我找到了正確的方法。條件不能用逗號(,)或分號(;)分隔。我們可以使用運算符將兩個條件結合在一起。
爲(初始化;條件1 & &條件2;增量)
例子:
for(int j= 0; j < 6 && j < ((int)abc[j] & 0xff) ; j++)
{
//
}
希望這有助於新的Java開發人員。
如果你喜歡一個代碼與一個漂亮的外觀,你可以做一休:如果你想這樣做,爲什麼
for(int j = 0; ; j++){
if(j < 6
&& j < ((int) abc[j] & 0xff)){
break;
}
// Put your code here
}
實際上,我不認爲這個版本看起來比for(...)構造中的表達式更漂亮。 – 2011-05-24 07:03:18
這對複雜情況有更好的觀察。 – 2011-05-24 07:16:55
不要一會兒,爲了安心? :P不,但我真的不知道,似乎有點不錯,所以謝謝,很高興知道!
可以在for循環中使用多個變量和條件,如下例所示。
for (int i = 1, j = 100; i <= 100 && j > 0; i = i - 1 , j = j-1) {
System.out.println("Inside For Loop");
}
您還可以用單一方法調用來代替複雜的條件,使其在維護中更少惡。
基本for語句包括
ForInit
)boolean
或
Boolean
(
ForStatement
)和
ForUpdate
)如果您需要多個條件建立你ForStatement,然後使用標準邏輯運算符(&&
,||
,|
,...)但 - 我建議使用一個專用的方法,如果它得到複雜:
for (int i = 0, j = 0; isMatrixElement(i,j,myArray); i++, j++) {
// ...
}
和
private boolean isMatrixElement(i,j,myArray) {
return (i < myArray.length) && (j < myArray[i].length); // stupid dummy code!
}
所以很尷尬,我不知道多個語句被允許在java中的初始化和更新for循環。這些東西是否存在,但應該非常謹慎地使用?可能是因爲可讀性 – 2016-02-03 05:51:05
而你的問題是? – trojanfoe 2011-05-24 06:46:05
JavaBits,你的帖子不是問題,說實話,我會避免for循環中的複雜表達式 - 更好地保持你的代碼簡單易讀。 – 2011-05-24 06:48:30
這只是爲了通知。 – JavaBits 2011-05-24 06:50:31