亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

while語句的i++

public class kf { ? ?public static void main(String[] args) { ? ? ? ? int i = 1; // 代表 1 - 5 之間的數字 ? ? ? ? // 當變量小于等于 5 時執行循環 while ( i<=5 ? ? ?) { ? ? ? ? ? ? // 輸出變量的值,并且對變量加 1,以便于進行下次循環條件判斷 System.out.println(i); } } 如果輸出后面不加入i++;為什么運行結果是無數個1???

正在回答

7 回答

while就是當你滿足括號里的那個條件時,就會循環,你的i=1,符合i<5那么循環一次,打印一次i,然后循環體再次判定i<5?這個時候你的i依然等于1,所以第二次打印輸出i。。。。。。以此類推,因為i一直等于1,也一直滿足i<5,所以會無限循環下去;加入i++后,第一次循環,i++,i會變成2,那么第二次循環之前判斷i=2<5,第二次循環條件成立,輸出2,i++,i的值變成3。。。。。。等第四次的時候,輸出4,i++,i的值變成5,i=5不滿足循環條件,結束循環。

1 回復 有任何疑惑可以回復我~
#1

林劍南 提問者

非常感謝!
2016-03-20 回復 有任何疑惑可以回復我~

while(i++<20){
???n*=i;
??}是什么意思?


0 回復 有任何疑惑可以回復我~
那為什么是i++ ?不是++i呢
0 回復 有任何疑惑可以回復我~
#1

copyrightgreat

++i是先自加然后賦值。i的值永遠是1.所以會出現i永遠<5的情況,導致無限循環。。
2016-05-08 回復 有任何疑惑可以回復我~
#2

copyrightgreat

寫錯了,,是先賦值后自加。。
2016-05-08 回復 有任何疑惑可以回復我~

因為沒有使循壞結束的語句,沒有使i改變的語句,所以一直處于循壞1的狀態

0 回復 有任何疑惑可以回復我~

i的值始終為1 while循環的判斷條件始終滿足 所以會一直執行循環體里的代碼 所以會一直輸出1

0 回復 有任何疑惑可以回復我~

因為如果不i++; 的話,i的值始終為1

while 語句的循環條件是i<=5 始終滿足條件,所謂會無限循環。

0 回復 有任何疑惑可以回復我~

因為如果不對i進行自加操作,i永遠都是1,符合循環條件,循環永遠不會結束,就會不停輸出i的值,也就是1

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

while語句的i++

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號