public class StringBufferDome {
public static void main(String[] args) {
String a="a";
String b="b";
String c=a+b+1;//在内存中a,b,1,a+b,a+b+1;五个对象
System.out.println(c);
String d="a"+1+2+3+4+"b";//一个对象a1234b
/*
* 用StringBuffer解决变量对象占用内存
1.StringBuffer目的是来解决字符串相加时带来的性能问题(常来与变量)
2.StringBuffer的内部实现采用字符数组,默认数组的长度为16,超过数组大小时动态扩充的算法是原来长度*2+2,
所以当我们已经预知要添加的数据长度时,建议使用带初始容量的的方法,来避免动态扩充的次数,从而提高效率
3.线程安全的,会影响性能
* */
StringBuffer sb=new StringBuffer(32);//带容量的构造,建议
sb.append(a).append(b).append(1);
System.out.println(sb.toString());
StringBuffer sb2=new StringBuffer("abc");
System.out.println(sb2);
}
}
Java APi之StringBuffer
猜你喜欢
转载自blog.csdn.net/weixin_44117272/article/details/89481109
今日推荐
周排行