码迷,mamicode.com
首页 > 其他好文 > 详细

String,StringBuffer,StringBuilder个人认为较重要的区别

时间:2017-02-04 11:24:27      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:ring   比较   效率   执行   字符   整理   不可变对象   nbsp   字符数组   

    今天在整理不可变对象知识点时,突然看到了String,StringBuffer,StringBuilder三者的区别,这里就挑一些我认为比较重要的点记录一下,方便日后查看。

    String,StringBuffer,StringBuilder都是final类,不允许被继承在本质上都是字符数组,不同的是,String的长度是不可变的而后两者长度可变,在进行连接操作时,String每次返回一个新的String实例,而StringBuffer和StringBuilder的append方法直接返回this,所以当进行大量的字符串连接操作时,不推荐使用String,因为它会产生大量的中间String对象。

StringBuffer和StringBuilder的一个区别是,StringBuffer在append方法前增加了一个synchronized修饰符,以起到同步的作用,为此也降低了执行效率;若要在toString方法中使用循环,使用StringBuilder。

String,StringBuffer,StringBuilder个人认为较重要的区别

标签:ring   比较   效率   执行   字符   整理   不可变对象   nbsp   字符数组   

原文地址:http://www.cnblogs.com/longjin-java/p/6364164.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!