StringBuilder 、StringBuffer 、String三者的比较
- 首先说运行速度,或者说是执行速度,在这方面运行速度快慢为:StringBuilder > StringBuffer > String。
- String最慢的原因:
String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者的对象是变量,是可以更改的。 - String:适用于少量的字符串操作的情况。
- StringBuilder:适用于单线程下在字符缓冲区进行大量操作的情况。
- StringBuffer:适用多线程下在字符缓冲区进行大量操作的情况。
- 在线程安全上,StringBuilder是线程不安全的,而StringBuffer是线程安全的。