newbear
2015-02-26 07:33
str插入一个逗号后,长度已经变了,为什么仍旧按照原先的字符长度进行插入呢
比如 0123456789每隔三位插入逗号 ,分别是 2,5,8
第一次 在2位插入
012,3456789
现在已经变了
下次应该在6位插入
012,345,6789
如果是正序插入,则第1次插入的index为3,第2次是(3+1)+3, 第三次是((3+1+3)+1)+3...
程序为:
for(int i=3;i<str.length();i+3){
str.insert(i,',');
i++;
}
代码及执行过程如下:
for(int i = str.length()-3; i >=0 ; i=i-3){ str.insert(i,","); }
如果str = "0123456789":
在第一次执行的时候i = str.length()-3,那么此时i的值为10-3等于7,那么加入逗号的时候,会在7的位置加入运行结果后应该是0123456,789
在第二次执行的时候会执行i=i-3这条语句,那么此时i的值为7-3等于4,那么加入逗号的时候,会在4的位置加入,运行结果应该是0123,456,789
后面的依次类推
Java入门第三季
409792 学习 · 4340 问题
相似问题