JAVA学习笔记-数组扩容

StringBuilder gh = new StringBuilder("a");

  for(int i=0;i<10;i++){

    gh.append(i);

  }

System.out.println(gh); 

但是这里有个问题,如果i<n,n足够大的情况下,是不是超出了StringBuilder的有效范围了呢?(这里的有效范围为a+16=17)

那么就引入了咱们的数组扩容的概念。

 

//建一个新数组

 

//每次扩容都是*2+2的顺序,反复扩容一直到足够使用。

 

//当扩容完成后value指向新数组,老数组因为没有引用会被java的垃圾回收机制回收掉!

 

posted @ 2016-11-11 16:21  iamAnonymous  阅读(3011)  评论(0编辑  收藏  举报