一.String的相关内容:都是基于char类型的数组操作
1.String的低层是用char数组,且使用final修饰。则不被继承,不被改变特性。保证安全和共享。提高效率。
2.Stringbuffer Stringbuilder
总结:底层实现和StringBuilder都是一样,只是区别在于方法加锁和没加,常量有没有使用关键字
StringBuffer:1.方法都加锁了 2.有初始化的private transient char[] tostringCache,每个方法都 toStringcache=null,因为Stringbuffer安全,但是加锁效率低。所以使用缓存提高性能。
使用缓存机制
StringBuilder:不安全,没有锁。