1 String、StringBuffer、StringBuilder的区别:
- String内容不可变,StringBuffer、StringBuilder内容可变。
- StringBuffer的方法加了synchronized,是同步方法,属于安全的线程操作。StringBuilder中的方法都属于异步方法,属于非线程安全的操作。所以,StringBuffer对数据的安全性更高,StringBuilder异步的性能更高。
2 String、StringBuffer、StringBuilder的适用场景:
实际开发中,95% 的情况使用String,当字符串需要变化时,一般选用StringBuffer。(习惯上的原因,StringBuffer在Java 1.0出现,StringBuilder在Java1.5出发)