经典Java面试题String字符串

请问String,Stringbuffer,Stringbuilder的区别?
答:
String 底层是FINAL的char数组 不可变 如果要进行改变就是重新new值。
Stringbuffer 底层是定义了默认char[16] 调用length方法输出的实际存入的参数 扩容是增了多长 加多长 线程安全但是效率低 适用多线程
Stringbuilder 底层定义了char[ ] 扩容是<<1 也就是*2 如果还不够 直接把传入的做为容量 线程不安全但是效率高

猜你喜欢

转载自blog.csdn.net/wang5g/article/details/121366997