面试题答案
一键面试性能优势
在Java单线程环境下,StringBuilder
性能优于StringBuffer
。
原理
StringBuffer
中的方法大多是 synchronized
修饰的,这意味着在多线程环境下,同一时间只有一个线程可以访问这些方法,以确保线程安全。然而在单线程环境中,这种同步机制反而成为了性能负担,因为每次调用方法都需要进行额外的同步操作。而 StringBuilder
没有使用 synchronized
修饰方法,所以在单线程环境下,无需进行同步操作的开销,从而获得更好的性能。