String/StringBuilder/StringBuffer区别


1、String内容是不可变的字符,String底层使用了一个不可变的字符数组(final char[])

注:final修饰一个类,这个类不可以被继承,若是修饰一个变量,这个变量被赋值后不可以改变

StringBuilder和StringBuffer底层是可变的字符数组

 

2、拼接字符串

1)、String进行拼接 String = "a"+"b";//在此创建了三个对象
2)、StringBuilder sb = new StringBuilder();sb.append("a").append("b");//仍然还是原来的对象
所以拼接字符串尽量不要用String进行拼接

 

 3.StringBuilder是线程不安全的效率高,StringBuffer是线程安全的,效率低

StringBuffer在append方法上增加了sycronize线程锁


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM