我看过的利弊一些文章String,并StringBuilder在Java编程语言。在其中一篇文章中,作者提到:
String
StringBuilder
StringBuilder 不是 线程安全的 ,因此在 多个线程中 使用 StringBuffer 。
不幸的是,我不明白这意味着什么。你能解释一下之间的区别String,StringBuilder以及StringBuffer特别是在“线程安全”的环境。
StringBuffer
如果您可以使用代码示例进行描述,我将不胜感激。
如果多个线程正在修改a的相同实例StringBuilder,则结果可能是意外的- 即某些修改可能会丢失。这就是为什么在这种情况下应使用StringBuffer的原因。但是,如果每个线程StringBuilder实例只能由一个线程修改,则最好使用StringBuilder,因为这样会更有效(线程安全性会带来性能成本)。