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开始  效率低 线程安全

 

posted on 2021-07-02 14:48  桃之夭夭*  阅读(117)  评论(0)    收藏  举报

导航