java - 為什么這個(gè)循環(huán)我跳不出來(lái)?
問(wèn)題描述
1.問(wèn)題描述:一直死循環(huán),反復(fù)打印,直到出錯(cuò)
2.相關(guān)代碼
int[] Aarray = new int[]{2,4,5,6,2};int[] Barray = new int[]{3,6,2,4,6};for (int i = 0 ;i < 10 ;i ++ ){ if (i < 5) {System.out.print(Aarray[i] + 't'); }else { i -= 5;System.out.print(Barray[i] + 't'); }}
問(wèn)題解答
回答1:當(dāng)i = 1, 2, 3, 4 不說(shuō)了,打印1 2 3 4當(dāng)i = 5時(shí)進(jìn)入else語(yǔ)句塊i -= 5 即為 i = i-5 結(jié)果是i = 0吧,然后i++
然后i又從1 開(kāi)始循環(huán)。for循環(huán)的終止條件 i < 10永遠(yuǎn)不能終止
回答2:跳出來(lái)就有鬼了。。。。
回答3:i -= 5; 是不是寫錯(cuò)了。
每次循環(huán)時(shí),i++ 把 i 加 1,但是 i -= 5; 又把 i 減 5。
回答4:i=5時(shí),if不成立,進(jìn)入else,做完 i -= 5; 結(jié)果就是 i=0;然后出else,i++之后,i=1;又進(jìn)入if...當(dāng)i=5時(shí)...
回答5:簡(jiǎn)單,你把程序自己腦子里走一遍就清楚了啊,一開(kāi)始i=0,小于5,輸出,然后i++到1,繼續(xù)小于5,在輸出,一直這樣直到i=5,然后i<5不成立,就走else那個(gè)分支,i-=5;i又小于0了,然后又開(kāi)始進(jìn)入下一次循環(huán)像開(kāi)頭那樣,所以出現(xiàn)無(wú)限死循環(huán)
回答6:你把i每個(gè)值的情況都看一下就一目了然了,在i>5的時(shí)候,i就進(jìn)入了else,這個(gè)時(shí)候i又變成了0,也就是說(shuō)i永遠(yuǎn)到不了i>10這個(gè)終止循環(huán)的條件
回答7:邏輯錯(cuò)了,加到6后,又減去5,回到1,然后又每次加1,加到6之后,又減去5,回到1,不斷地循環(huán)。
回答8:邏輯有問(wèn)題 無(wú)限死循環(huán)
回答9:這種問(wèn)題建議先找個(gè)入門書(shū)或者入門視頻看10分鐘
相關(guān)文章:
1. windows誤人子弟啊2. php傳對(duì)應(yīng)的id值為什么傳不了啊有木有大神會(huì)的看我下方截圖3. 實(shí)現(xiàn)bing搜索工具urlAPI提交4. 關(guān)于mysql聯(lián)合查詢一對(duì)多的顯示結(jié)果問(wèn)題5. 如何用筆記本上的apache做微信開(kāi)發(fā)的服務(wù)器6. mysql優(yōu)化 - MySQL如何為配置表建立索引?7. 數(shù)據(jù)庫(kù) - Mysql的存儲(chǔ)過(guò)程真的是個(gè)坑!求助下面的存儲(chǔ)過(guò)程哪里錯(cuò)啦,實(shí)在是找不到哪里的問(wèn)題了。8. 我在網(wǎng)址中輸入localhost/abc.php顯示的是not found是為什么呢?9. MySQL主鍵沖突時(shí)的更新操作和替換操作在功能上有什么差別(如圖)10. 冒昧問(wèn)一下,我這php代碼哪里出錯(cuò)了???
