JAVA基础进阶学习(13)--StringBuilder底层、 StringBuilder和StringBuffer的区别
StringBuilder底层的两个属性:
char[ ] value; //用于存储该数组
int count; //该数组中有多少长度被占用

StringBuilder底层原理:数组扩容
1、初始化数组的大小:调用空构造器长度为16;也可以赋值指定长度;也可以赋值字符串,长度为字符串长度加16;
2、计算当前拼接的值的长度,查看是否够放入主数组中,不够扩容,足够将调用放置方法拼接;
3、拼接完成后,返回该StringBuilder,并且修改数组被占用的长度。







StringBuilder和StringBuffer的区别
StringBuilder JDK1.5 开始 效率高 线程不安全
StringBuffer JDK1.0开始 效率低 线程安全

浙公网安备 33010602011771号