String | StringBuffer | StringBuilder |
---|---|---|
String类是不可变类,任何对String的改变都 会引发新的String对象的生成 | StringBuffer是可变类,对它的改变不会产生新的对象 | |
StringBuffer支持并发操作,适合多线程中使用 | Stringbuilder不支持并发操作,不适合多线程 | |
StringBuffer线程安全 | StringBuilder线程不安全 |
- 三者中,不考虑线程问题时,String耗时最长。
- 单线程中(不考虑多线程问题时)使用StringBuilder最快。
- 如果要保证线程安全,用StringBuffer。