stringBuffer 和stringBuilder

原创 2012年03月26日 09:12:37

 

 

2 StringBuilder StringBuffer

  String = char[] + 操作(复制创建新对象)

  StringBuilder=char[] + char[]操作(处理当前数组内容)

  StringBuilder 内部的char[]数组内容可变, 如果长度

  不够, 利用变长算法维护, 自动扩容长度.

 

 1) StringBuilder 是变长字符序列

 2) StringBuilder 方法:appendinsert ... 都返回

   当前 StringBuilder 对象本身的引用。

 3) 如果软件需要大量字符串处理时候建议使用StringBuilder

   "A" + "B"

 4) String s = s1+s2; Java实际上才是如下代码运行:

   String s=new StringBuilder(s1).append(s2).toString();

    

   String s = s1+s2+s3+s4; 被优化为

   String s = new StringBuilder(s1)

     .append(s2).append(s3).append(s4).toString();

  

   s+="a";//会产生两个新对象(StringBuilder, String)

 

   StringBuilder buf=new StringBuilder();

   buf.append("a");

   buf.append("a");

  

 5) StringBuffer StringBuilder API几乎一样!

   StringBuffer java早期提供的,速度稍慢,线程安全

   StringBuilder Java5 以后提供的,速度快,非线程安全

 

char[]  Stirng  StringBuilder(1.5) ==? StringBuffer(1.0)

                   非线程安全非同步        线程安全同步

String、StringBuffer、StringBuilder的区别与效率比较

String 是不可变的,StringBuffer、StringBuilder是可变的 String 、StringBuffer是线程安全的,StringBuilder是线程不安全的 (StringB...
  • u010002184
  • u010002184
  • 2017年05月18日 15:15
  • 421

String ,StringBuffer和StringBuilder最佳用法

String  首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象。查看源码就会发现String类为final型的(当然也不可被继承),而且通过查看JDK文档会发现...
  • Jo__yang
  • Jo__yang
  • 2016年06月14日 19:56
  • 626

String,StringBuffer, StringBuilder类的常用方法

一、String类的常用方法1.获取: 1)获取字符串str长度 int i = str.length(); 2)根据位置(ind...
  • zhao_yu_lei
  • zhao_yu_lei
  • 2017年05月12日 13:38
  • 776

StringBuilder的用法及String,StringBuffer与StringBuilder的区别

声明:本文大部分内容为参考别人的,自己简单汇总整理了一下。String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全)简要的说,...
  • u011489043
  • u011489043
  • 2017年03月30日 15:33
  • 545

StringBuffer与StringBuilder之间的区别

public class Test { public static void main(String[] args) { StringBuffer strBuffer = new StringB...
  • a19881029
  • a19881029
  • 2014年03月02日 13:25
  • 2595

String,StringBuffer,StringBuilder运行速度的比较

1.String 是final对象,不会被修改,每次使用 + 进行拼接都会创建新的对象,而不是改变原来的对象; 2.StringBuffer 可变字符串,主要用于字符串的拼接,属于线程安全的; 3...
  • huwenhu2007
  • huwenhu2007
  • 2014年03月07日 10:03
  • 3418

String StringBuilder StringBuffer 对比 总结得非常好

转自:http://www.iteye.com/topic/522167 作者:每次上网冲杯Java时,都能看到关于String无休无止的争论。还是觉得有必要让这个讨厌又很可爱的Stri...
  • clam_clam
  • clam_clam
  • 2011年09月28日 19:00
  • 33224

Java基础之String、StringBuffer与StringBuilder的区别及应用场景

1 String、StringBuffer与StringBuilder (1)String 字符串常量; /** Strings are constant; their values cann...
  • chenliguan
  • chenliguan
  • 2016年07月14日 18:35
  • 6263

C#:string、stringBuffer、stringBuilder的区别

最近对这几个傻傻分不清楚,在网上搜集了一些资料,现在总结一下。 string是基本类型,第一条语句,实际上是创建一个名为s1的string类型的对象,系统为s1分配足够的内存来保存s1中的数据。第二条...
  • qq_28187979
  • qq_28187979
  • 2017年08月03日 09:59
  • 1251

线程安全性——从StringBuffer和StringBuilder的区别说起

面试的时候面试官问到了线程安全的问题,感觉答得不如人意。当时没答好,问面试官如何理解好,他说:可以参照StringBuffer和StringBuilder。于是赶紧回来自行恶补一下。这就是学渣的苦果呀...
  • DJJT10
  • DJJT10
  • 2016年10月19日 20:28
  • 1258
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:stringBuffer 和stringBuilder
举报原因:
原因补充:

(最多只允许输入30个字)