StringBuilder和StringBuffer
1.为什么有了String类还有这两个类?
- 因为String类型是被final修饰符修饰的,一次赋值就无法再进行更改了
- 所以有了StringBuilder和StringBuffer
2.他们的区别?
他们都是可变长字符串。
StringBuffer是线程安全的,根据名字可以理解为线程缓冲区,而对于缓冲区的访问都是需要同步互斥的,但是互斥的访问会降低访问速度。
StringBuilder是线程不安全的,纯粹是为了提升访问速度,所以什么时候用什么都需要仔细去思考。
留下问题:
什么时候用StringBufffer,什么时候用StringBuilder?我说的是实际应用场景。