您的位置:首页 > 其它

Arraylist与LinkedList的区别

2017-08-15 16:32 295 查看


ArrayList

底层是个默认大小为10的数组,所以当size需求大于10时,初始化size的时候大一点。
当ArrayList的写满之后,ArrayList会生成一个更大的数组,大小变为原来的1.5倍。然后将原来数组的数据拷贝过去,因此会占用一定的时间和内存。
12345678910111213
public void ensureCapacity(int var1) {      ++this.modCount;      int var2 = this.elementData.length;      if(var1 > var2) {          Object[] var3 = this.elementData;          int var4 = var2 * 3 / 2 + 1;          if(var4 < var1) {              var4 = var1;          }   this.elementData = Arrays.copyOf(this.elementData, var4);      }  }
适合随机访问


LinkedList

底层是List,适用于频繁添加删除元素的情况
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: