您的位置:首页 > 产品设计 > UI/UE

Java中的String,StringBuffer,StringBuilder的区别

2015-07-07 17:37 603 查看
Java为我们提供了三个对字符串操作的类,分别是
String
,
StringBuffer
StringBuilder


String

其中String在Java中是通过常量池来实现的,String本身是常量池中一个元素的引用,每次String的值在常量池中不存在都将构建新的常量字符串并且产生未被使用的对象。

所以String得值并不适合多次改变否则效率就会变得很低。

StringBuilder和StringBuffer

当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类。

和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuilder类在Java 5中被提出,它和StringBuffer之间的最大不同在于StringBuilder的方法不是线程安全的(不能同步访问)。

由于StringBuilder相较于StringBuffer有速度优势,所以多数情况下建议使用StringBuilder类。然而在应用程序要求线程安全的情况下,则必须使用StringBuffer类。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: