(1)String是由final修饰的类,所有的属性也是final的,所有String是不可变类型,字符串的剪切、拼接会产生新的字符串
(2)StringBuffer本质上是线程安全(synchronized)的、可修改的字符串对象,因为保证线程安全,所有会带来性能上的损耗
(3)StringBuilder和StringBuffer区别不大,不同的是StringBuilder去掉了synchronized线程同步 ,提高了操作效率,是线程不安全的,是绝大多数情况下拼接字符串的首选,字符串拼接 会自动转换为StringBuilder
(4)如果需要拼接字符串多次,并且拼接后的长度可预计,那么在开始的时候制定合适的大小,避免扩容带来的开销
String、StringBuffer、StringBuilder的区别
最新推荐文章于 2023-04-23 15:16:55 发布