我與此代碼工作在Java中迭代器的值時,循環停止執行
int i = 2;
for (int j=0; j < 12; j++) {
i += j;
}
當循環停止執行有一個測驗中J 的價值。 之後的值循環停止執行顯然是12.但是,什麼時候?
我試圖通過循環語句後加入
System.out.println(j);
克服我的困惑,但它被證明是一個錯誤(找不到Ĵ的符號)。
有人請解釋嗎?謝謝
我與此代碼工作在Java中迭代器的值時,循環停止執行
int i = 2;
for (int j=0; j < 12; j++) {
i += j;
}
當循環停止執行有一個測驗中J 的價值。 之後的值循環停止執行顯然是12.但是,什麼時候?
我試圖通過循環語句後加入
System.out.println(j);
克服我的困惑,但它被證明是一個錯誤(找不到Ĵ的符號)。
有人請解釋嗎?謝謝
如果在循環內聲明j
,j
在循環結束後沒有值,因爲它超出了它的範圍。
如果您在循環之前聲明j
,你就可以循環後打印它的價值,這將是12
int i = 2;
int j = 0;
for (j=0; j < 12; j++) {
i += j;
}
System.out.println(j);
是的,多麼愚蠢的錯誤大聲笑。非常感謝:D – mawgumelar
你不能打印出j
變量,因爲它在inlcuded只有你的循環週期。
要正確打印出來,必須在循環外定義j
變量。
int i=2;
int j;
for (j=0; j<12; j++) {
i+=j;
}
System.out.println(j);
啊,我明白了!謝謝。現在我明白了:D – mawgumelar
'j'在循環之外是未知的,因爲它在'for'初始化中定義。將你的'System.out.println'放入循環中,並查看它的最後一個值。 – Berger
當循環停止執行時,這是因爲'j = 12' - 所以12是'when'值 –