String,StringBuilder,StringBuffer对比分析

xiaoxiao2021-02-28  121

1.执行速度比较:

StringBuilder > StringBuffer > String

原因分析:

String:定长字符串

StringBuffer:变长字符串,线程安全的

StringBuilder:变长字符串,线程不安全的

String类时final的,无法改变对象,因此,每当String操作字符串时,实际上就是在不断new新的对象,而原有对象将变为垃圾被GC回收,执行效率较慢

StringBuiler,StringBuffer操作的字符串长度都可改变,可预先分配指定长度的内存块建立一个字符串缓冲区,节省了new对象的时间,因此执行速度比String快

2.使用场景:

1)如果操作少量的数据用 String

2)单线程操作字符串缓冲区下操作大量数据用 StringBuilder

3)多线程操作字符串缓冲区下操作大量数据用StringBuffer

转载请注明原文地址: https://www.6miu.com/read-54412.html

最新回复(0)