首页 > 编程 > Java > 正文

java Stringbuilder和Stringbuffer

2019-11-06 06:21:31
字体:
来源:转载
供稿:网友
StringBuilder和StringBuffer类似,前者是线程不安全的,后者是线程安全的。   但StringBuilder比StringBuffer速度快StringBuilder:String A = "";  long B = System.currentTimeMillis();  for (int i = 0; i < 100000; i++) {   A += i+",";  }  System.out.PRintln(A);  System.out.println("用时:"+(System.currentTimeMillis()-i));                                                                           最后结果StringBuilder比StringBuffer块一些。StringBuffer:StringBuffer A = new StringBuffer();  long B = System.currentTimeMillis();                   for (int i = 0; i < 100000; i++) {   A append(i).append(",");  }  System.out.println(A);  System.out.println("用时:"+(System.currentTimeMillis()-B));    StringBuffer在内部会维护一个比较大的char数组,数组会有一个初始容量    容量默认是16    当StringBuffer调用append方法追加内容的时候,     会在数组里检查有没有空的位置,如果有,则直接赋值    没有呢,(char数组满了)。扩容     在原来的基础上乘以2再加2.如果还不够,把容量等于需要的容量值
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表