Collection集合常用实现类及方法

Collection集合常用实现类及方法

目录

 

ArrayList 有序,底层数组实现,遍历轮询效率高

LinkedList 链表形式存储,增删效率高

HashSet 无序,不重复(通过equals()和hashCode方法过滤是否重复) 

TreeSet  无序,不重复(通过实现Comparable的CompareTo方法过滤重复元素)


ArrayList 有序,底层数组实现,遍历轮询效率高

增:

boolean   add(E e) 添加指定元素到当前集合中

void   add(int index , E element) 将指定元素插入到指定位置

boolean   addAll(Collection<E> c) 添加指定集合到当前集合中

void   addAll(int index , Collection<E> c) 将指定集合元素插入到指定位置

删:

void   clear() 删除集合中所有元素

E   remove(int index) 删除集合中指定位置的元素

boolean   remove(Object o) 删除集合中第一个出现的指定元素(如果有返回true)

boolean   removeAll(Collection c) 删除集合中包含指定集合元素的元素

boolean   retainAll(Collection c) 删除集合中不包含指定集合元素的元素(仅保留包含指定集合的元素,交集)

改:

E   set(int index , E e) 将指定索引对应的元素替换为指定的元素,返回替换掉的元素

查:

boolean   contains(Object o) 判断集合中是否包含指定元素

E   get(int index) 返回集合中指定索引位置对应的元素

int   indexOf(Object o) 返回指定元素在集合中第一次出现的索引位置,如果不包含则返回-1;

int   lastIndexOf(Object o) 返回指定元素在集合中最后一次出现的索引位置,如果不包含则返回-1

boolean   isEmpty() 判断当前元素是否为空

Interator<E>   interator() 返回当前集合的迭代器(用于遍历)

int   size() 返回集合中的元素个数

Object[]   toArray() 返回当前集合的数组形式;


LinkedList 链表形式存储,增删效率高

增:

boolean   add(E e) 添加指定元素到当前集合中

void   add(int index , E element) 将指定元素插入到指定位置

boolean   addAll(Collection<E> c) 添加指定集合到当前集合中

void   addAll(int index , Collection<E> c) 将指定集合元素插入到指定位置

void   addFirst(E e) 在集合的第一个位置插入元素

void   addLast(E e) 在集合的最后追加元素

boolean   offer(E e) 在集合的最后追加元素

boolean   offerLast(E e) 在集合的最后追加元素

boolean   offerFirst(E e) 在集合的第一个位置插入元素

void   push(E e) 在集合的第一个位置插入元素

删:

void   clear() 删除集合中所有元素

E   poll() 删除集合的第一个元素并返回 如果为空返回null

E   pollFirst() 删除集合的第一个元素并返回 如果为空返回null

E   pollLast() 删除集合的最后一个元素并返回 如果为空返回null

E   pop() 删除集合的最后一个元素并返回 如果为空抛异常 NoSuchElementException

E   remove() 删除集合中的第一个元素并返回

E   removeFirst() 删除集合中的第一个元素并返回

E   removeLast() 删除集合中的最后一个元素并返回

boolean   remove(Object o) 删除集合中第一个出现的指定元素(如果有返回true)

改: 

E   set(int index , E e) 将指定索引对应的元素替换为指定的元素,返回替换掉的元素

查:

boolean   contains(Object o) 判断集合中是否包含指定元素

E   get(int index) 返回集合中指定索引位置对应的元素

E   element() 获取集合的第一个元素

E   peek() 获取集合的第一个元素

E   peekFirst() 获取集合的第一个元素

E   peekLast() 获取集合的最后一个元素

E   getFirst() 获取集合的第一个元素

E   getLast() 获取集合的最后一个元素

int   indexOf(Object o) 返回指定元素在集合中第一次出现的索引位置,如果不包含则返回-1;

int   lastIndexOf(Object o) 返回指定元素在集合中最后一次出现的索引位置,如果不包含则返回-1

int   size() 返回集合中的元素个数

Object[]   toArray() 返回当前集合的数组形式;

boolean   isEmpty() 判断当前元素是否为空

 


HashSet 无序,不重复(通过equals()和hashCode方法过滤是否重复) 

增:

boolean   add(E e) 添加指定元素到当前集合中,若元素中已包含相同的元素,则返回false

删:

void   clear() 删除集合中所有元素

boolean   remove(Object o) 删除集合中指定元素(如果有返回true)

改:

无序,没索引 改不了 

查:

boolean   contains(Object o) 判断集合中是否包含指定元素

boolean   isEmpty() 判断当前元素是否为空

Interator<E>   interator() 返回当前集合的迭代器(用于遍历)

int   size() 返回集合中的元素个数


TreeSet  无序,不重复(通过实现Comparable的CompareTo方法过滤重复元素)

TreeSet中的元素对象必须实现Comparable的CompareTo方法,若没有实现则会抛出造型异常ClassCastException

集合中元素对象按CompareTo方法自然排序,与插入顺序无关

增:

boolean   add(E e) 添加指定元素到当前集合中

boolean   addAll(Collection<E> c) 添加指定集合到当前集合中

删:

void   clear() 删除集合中所有元素

E   pollFirst() 删除集合中的第一个元素,空返回null

E   pollLast() 删除集合中的最后一个元素,空返回null

boolean   remove(Object o) 删除集合中指定元素(如果有返回true)

改: 

无序,没索引 改不了 

查:

boolean   contains(Object o) 判断集合中是否包含指定元素

E   first() 返回集合中第一个元素

E   last() 返回集合中最后一个元素

boolean   isEmpty() 判断当前元素是否为空

Interator<E>   interator() 返回当前集合的迭代器(用于遍历compareTo升序)

Interator<E>   descendingInterator() 返回当前集合的迭代器(用于遍历compareTo降序)

int   size() 返回集合中的元素个数