你的位置:首页 > 软件开发 > Java > String和StringBuffer、StringBuilder的区别

String和StringBuffer、StringBuilder的区别

发布时间:2016-01-07 00:00:04
目录:1、String类的不可变性2、用String的时候需要注意什么3、String与StringBuilder的区别4、StringBuilder和StringBuffer的区别String类的不可变性: 这个不可变性需要看源码,String类中有几个成 ...

目录:

1、String类的不可变性

2、用String的时候需要注意什么

3、String与StringBuilder的区别

4、StringBuilder和StringBuffer的区别

String类的不可变性:

      这个不可变性需要看源码,String类中有几个成员变量:

      private final char[] value;//存放String的值

      private final int offset;

      private final int count;

     他们都是final类型的,当你创建一个String之后它们就无法改变,所以这个不可变指的是String的值value不可变。

用String的时候需要注意什么

     由于String的不可变性所以应该避免创建大量的String对象,应为大量final类型的String对象会暂用大量的内存,内存可是很宝贵的。

String与StringBuilder的区别

      StringBuilder进行字符串的连接等操作时不会创建新的字符串对象,所以在操作字符串的时候推荐把一个String转换为StringBuilder再进行操作,这样可以节省内存。

StringBuilder和StringBuffer的区别

     它俩的区别就是StringBuffer是线程安全的,它的方法都加了锁,多在多线程中使用,在单线程中建议使用StringBuilder,会更快。

 


原标题:String和StringBuffer、StringBuilder的区别

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录