StringBuffer:线程安全,执行速度慢,JDK1.0中就有
StringBuilder:线程不安全,单线程安全,执行速度快,JDK5.0以后才有
原因:
查看StringBuffer源码就会发现,StringBuffer源码中的方法加入了synchronized锁,而StringBuilder并没有加锁,所以StringBuffer是线程安全的,StringBuilder执行速度快,加锁会影响执行速度
适用场景:
1、StringBuffer:多线程环境下涉及到共享变量的插入和删除操作,StringBuffer则是首选
2、StringBuilder:单线程操作并且有大量的字符串拼接,插入,删除操作则StringBuilder是首选