String 和StringBuffe StringBuilder 的区别

1.可变性:String不可变(适用于做HashMap的键),StringBuffer和StringBuilder可变

2.性能角度:,String在new的时候,会在常量池中开辟空间,比较耗费内存,而StringBuffer,StringBuiilder字符串缓冲区(里面存储的全部都是字符串),它会释放掉

3.赋值不同:StringBuffer和StringBuilder只能通过构造函数来建立,String可以除了构造方法外还可以赋值,如:String str = "abc";

4.性能:字符串拼接时,String效率低于俩者

5.安全:String、StringBuffer线程安全,StringBuilder线程不安全,单线程下StringBuilder效率最高

6.特有功能:StringBuffer有字符串反转功能,其他俩者没有

猜你喜欢

转载自www.cnblogs.com/chenlong321/p/11767901.html