二哥啊

导航

 

ArrayList  1.2

  作为List接口的主要实现类

  线程不安全的,效率高

  底层用Object[] elementData存储

  jdk7:

  ArrayList list = new  ArrayList()  底层创建了长度是10的Object【】数组

  添加导致底层数组容量不够,则扩容。

  每次扩容1.5倍

  建议开发中使用带参的构造器

  jdk8

  底层Obect[]数组初始化为{},并没有创建长度为10 的数组

  第一次调用add时,底层才创建。

    

常用方法:

删 remove() 1.int index  2.Object obj

长度

遍历

  

LinkedList 1.2

  对于频繁的插入、删除操作,使用此类效率比ArrayList高

  底层使用双向链表存储

  

Vector   1.0

  作为List接口的古老实现类

  线程安全的,效率低 

同:都实现List接口,存储有序的可重复的数据

void add(int index ,Object ele ) 在index位置插入ele元素

boolean addAll(int index,Collection eles )从index位置开始讲eles中的所有元素添加进来

Object get(int index)获取指定位置的元素

int indexOf(Object obj)返回obj在当前集合中首次出现的位置

Object remove(int index)移除指定index位置的元素并返回此元素

Object set(int index,Object ele) 设置指定index位置的元素为ele

posted on 2019-11-29 15:26  二哥啊  阅读(100)  评论(0编辑  收藏  举报