【发布时间】:2023-04-04 22:00:01
【问题描述】:
String 和(StringBuilder 或 StringBuffer)之间有很多区别,比如可变性和许多字符串操作
可能这个问题看起来有点傻,但是为了编程范式,我想知道。
我想问,为什么 Java 实现了另一个类,StringBuilder 或 StringBuffer 用于像 String 这样的数据结构。为什么他们没有在String 本身中提供这些功能。
为什么不让String 本身是线程安全的,或者提供一些StringBuilder 或StringBuffer 具有的额外功能?
【问题讨论】:
-
@bobs_007 - 我知道 StringBuffer 和 StringBuilder 之间的区别,请阅读我的问题,即在我的帖子中加粗
-
如果我记得很清楚字符串是线程安全的!
-
String是不可变的,StringBuilder是可变的。就这么简单。您不能将StringBuilder功能添加到String,因为它们都是关于可变性的。 -
@JonSkeet 很荣幸能修正 Jon Skeet 的错别字:)
标签: java string stringbuilder stringbuffer