String和StringBuffer,StringBuilder的区别:
它们都是用来操作字符串的,区别在于String是操作的不可变的字符串,StringBuffer和StringBuilder操作的是可变的字符串。
String操作的字符串如果修改相当于重新创建一个字符串,把新字符串的地址赋给了String。
StringBuffer和StringBuilder操作的字符串是可变长度的字符串,不会创建新的对象,是在原来的字符串上进行修改,速度大于String.
StringBuffer和StringBuilder的区别:
1)在执行速度上,StringBuilder大于StringBuffer;
2)StringBuffer是线程安全的,则StringBuilder是线程非安全的。
总结:
如果要操作少量字符串的时候使用String
单线程下操作可变字符串使用StringBuilder
多线程下操作可变字符串使用StringBuffer
其他类型转化为String类型,以int类型为例,有三种方法(int.toString(),int+"",String.valueOf(int))
其中消耗时间最短的是:.toString方法
其次是:String.valueOf()
最后是:int+"";方法。
本文详细解析了String、StringBuffer与StringBuilder的区别,重点介绍了它们在不同场景下的应用,包括单线程和多线程环境下如何选择合适的字符串操作类。
2636

被折叠的 条评论
为什么被折叠?



