插入了‘,’不会改变str的长度吗?
我是这么理解的:关于循环时增加“,”后,字符串的长度会不会改变。答案是,会的。但这不影响字符串原来的长度,为什么?这就是循环执行的步骤问题,简单说循环开始从起始位置(int i=str.length()-3)开始(呵呵,原谅我不知道叫循环的什么部分),来到判断条件,再到循环体,再到变量的改变。第二次循环会在判断条件开始,所以起始位置只在循环开始执行一次,以后都不会再执行,所以,字符串的长度是改变的,但没有调整的 ,还是对原来的长度来insert做手术。
package lesson;
public class StringLesson {
public static void main(String[] args) {
StringBuilder str =new StringBuilder("abcdse");
System.out.println("字符串原长度:"+str.length());
str.insert(2,',');
System.out.println("添加,之后的长度:"+str.length());
}
}
运行结果:
字符串原长度:6
添加,之后的长度:7
public class zzz {
static String art="axc";
static String art1="ax,c";
public static void main(String[] args) {
// TODO 自动生成的方法存根
int a=art.length();
int b=art1.length();
System.out.println(a+" "+b);
}
}
输出结果是:
3 4
你可以编辑试一下,应该会改变吧