String、StringBuffer、StringBuilder主要区别及使用选择

标签: StringStringBufferStringBuilder
523人阅读 评论(0) 收藏 举报
分类:

1.首先StringStringBufferStringBuilderJDK中都被定义为final类,这意味着他们不可以被继承。

2.String最常见,与StringBuffer相比,String的性能较差,因为对String类型进行改变的时候都会重新生成一个新的String对象,这在字符串拼接操作时很明显,因此内容经常改变的字符串不应该使用String,如果不考虑多线程,则应使用StringBuilder

3.StringBuffer生成一个对象后,在进行字符串拼接操作时,调用append方法即可,不会产生新的对象,仅对对象本身进行操作,性能比String要高。另外StringBuffer是线程安全的,因此适合在多线程中使用,也正因为如此,速度跟StringBuilder相比会比较慢。

4.StringBuilder的使用方法跟StringBuffer类似,但其是非线程安全的,因此一般常用于单线程,效率比StringBuffer高。

 

综上所述,选择哪个,需要从内存性能、线程安全、执行效率等多方面考虑,从上面的几条对比中可以得出答案。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:205825次
    • 积分:3310
    • 等级:
    • 排名:第10255名
    • 原创:103篇
    • 转载:14篇
    • 译文:19篇
    • 评论:146条
    微信公众号

    Android修行日记

    最新评论