从运行结果中我们可以看到,程序运行时会额外创建一个对象,保存 "helloworld"。当频繁操作字符串时,就会额外产生很多临时变量。使用 StringBuilder 或 StringBuffer 就可以避免这个问题。至于 StringBuilder 和StringBuffer ,它们基本相似,不同之处,StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。因此一般情况下,如果需要创建一个内容可变的字符串对象,应优先考虑使用 StringBuilder 类。
2015-03-17
StringBuffer str = new StringBuffer();
for(int i = str.length()-3; i>0;i=i-3) {
str.insert(i,',');
}
for(int i = str.length()-3; i>0;i=i-3) {
str.insert(i,',');
}
2015-03-12