String 和 StringBuilder、StringBuffer 的区别?

String 和 StringBuilder、StringBuffer 的区别?
- String: String 类型的值一旦创建就不能被修改,任何对 String 的修改都会生成一个新的 String 对象。
- StringBuffer: StringBuffer 类似于 String,但是它的值可以被修改。StringBuffer 使用 synchronized 来保证线程安全,在多线程环境下使用较为安全。
- StringBuilder: StringBuilder 是 StringBuffer 的非线程安全版本,它也可以修改值。相对于 StringBuffer,StringBuilder 在性能上更高,适用于单线程环境下的字符串操作。