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

原创 2015年07月07日 16:04:05

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

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

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

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

 

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

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java中 String类、StringBuilder类、StringBuffer类 区别与如何选择

String,StringBuilder;StringBuffer,区别;选择       关于这三者的区别,我们从官方API上很容易找到答案。 这里做了一下比较,并写了点测试代码。   ...

String、StringBuffer和StringBuilder的区别以及使用方法

String、StringBuffer和StringBuilder的区别以及使用方法

String、StringBuffer和StringBuilder使用和区别

String类想要了解一个类,最好的办法就是看这个类的实现源代码,String类的实现在 \jdk1.6.0_14\src\java\lang\String.java 文件中。 打开这个类文件...

java字符串(1):String,StringBuffer,StringBuilder的使用与区别

前言java中最常用的类之一就是String类,java程序中的所有字符串字面值(如“abc”)都作为此类的实例实现。更多描述请查阅API文档综述。本文介绍String类的使用和一些注意事项,以及与S...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:String、StringBuffer、StringBuilder主要区别及使用选择
举报原因:
原因补充:

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