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

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

for循環


str.append("jaewkjldfxmopzdm");

? ? ? ? // 從后往前每隔三位插入逗號

for(int i=str.length()-3;i>0;i=i-3)

? ? ? ? str.insert(i,",");

(問題:這里的str經過循環應該會帶入“,”進入循環吧 那就應該是i=i-4,但是運行結果卻不是了,所以循環里insert“,”不會帶入str是嗎?str還是按照length算嗎?)

? ? ? ??

? ? ??

正在回答

3 回答

for(int i=3;i<=str.length();i=i+4){

????str.insert(i,",");

}這樣得出的是從前往后遍歷,你把字符串的位數用數組下標來理解就對了。逗號是順序依次插入進去的,插入完畢之后才會形成一個新的數組。逗號并不會帶入到循環體內進行運算。

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

insert ","會改變str的值,循環每執行一次,str就會被插入一個逗號,不明白你說的i=i-4是什么意思,為什么你覺得i會等于i-4

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

動次丶打次 提問者

加入“,”后光標就在逗號后面要繼續每隔三位不是要減4位嗎?(循環第一次jaewkjldfxmop,zdm 要變成jaewkjldfx,mop,zdm)加上逗號是4位吧 。。。。。。。。。。還是不懂求解
2015-11-13 回復 有任何疑惑可以回復我~
#2

sixGod 回復 動次丶打次 提問者

你的逗號是從后往前加的啊,所以不管你后面加了多少逗號,逗號前面的值一直不變, 如第一次加逗號i=16-3;i>0,所以str.insert(13,','),即在第13位加入一個逗號,你的i是遞減,所以第二輪循環時,i=10,i>0;所以在第10位加入一個逗號,以此循環的
2015-11-16 回復 有任何疑惑可以回復我~

56440eb800018e7101670197.jpg

56440eb800018e7101670197.jpg1111111111111


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

舉報

0/150
提交
取消
Java入門第三季
  • 參與學習       409766    人
  • 解答問題       4543    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程
微信客服

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

幫助反饋 APP下載

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

公眾號

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