在这里讲了一个很有意思的东西,什么地方使用 stringBuilder?
通常就是不要求线程安全的地方!
线程安全是怎么定义的,怎么考虑的?
有这么一个场景,比如controller service层使用一个stringBuilder,
此时线程1进来,创建使用stringbuilder对象,是创建了一个栈帧。在这个栈帧中使用add。
此时线程2进来,又创建使用stringbuilder对象,此时是另外一个栈帧,在这个栈帧中使用add。
这种场景使用的时候,是不存线程安全的情况的考虑,因为这两个线程用的是两个对象。
类比arrayList,HashMap。