美文网首页
string stringbuffer stringbuil

string stringbuffer stringbuil

作者: 小白修仙之路 | 来源:发表于2019-02-14 19:34 被阅读0次

    String、StringBuffer、StringBuilder的区别;

    1. String对象是不可改变的。

    2. 如果要修改字符串而不创建新的对象,则可以使用 StringBuilder 类。例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder 类可以提升性能。

    3. 由于 String 的值一旦创建就不能再修改,所以称它是恒定的。看似能修改 String 的方法实际上只是返回一个包含修改内容的新 String。

    4. StringBuffer可改变的Unicode字符序列,允许并发操作,是线程安全的。

    5.  StringBuilder:可改变的Unicode字符序列操作同StringBuffer,只是不支持并发操作,非线程安全的 。

    6. 不考虑线程安全前提下,StringBuilder性能最高,StringBuffer次之,String比较差。  为什么StringBuffer的性能比String高?主要原因在于String类是不可变类,任何对String引用指向的字符串作出的修改都会导致生成新的字符串(对象),而对StringBuffer的修改则不会导致新对象的产生。

    那么为什么StringBuilder的性能比StringBuffer的高呢?这则与线程安全有关。StringBuilder是线程非安全的。

    相关文章

      网友评论

          本文标题:string stringbuffer stringbuil

          本文链接:https://www.haomeiwen.com/subject/bnsyeqtx.html