- String 字符串常量
- StringBuffer 字符串变量(线程安全)
- StringBuilder 字符串变量(非线程安全)
在大多数情况下三者在执行速度方面的比较:StringBuilder > StringBuffer > String
String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象
三者使用的总结:
1、如果要操作少量的数据用 = String
2、单线程操作字符串缓冲区 下操作大量数据 = StringBuilder
3、多线程操作字符串缓冲区 下操作大量数据 = StringBuffer
StringBuilder 与StringBuffer的区别,StringBuilder与String的区别。
- StringBuilder效率高,线程不安全,StringBuffer效率低,线程安全。
- String是不可变字符串,StringBuilder是可变字符串。
- 如果是简单的声明一个字符串没有后续过多的操作,使用String,StringBuilder均可,若后续对字符串做频繁的添加,删除操作,或者是在循环当中动态的改变字符串的长度应该用StringBuilder。使用String会产生多余的字符串,占用内存空间。