Iterable
方法
Iterator<T> iterator() 迭代器
Collection :保存的都是一个一个元素
方法
boolean add(E e)
boolean addAll(Collection<? extends E> c)
void clear()
boolean contains(Object o)
boolean containsAll(Collection<?> c)
boolean equals(Object o)
boolean isEmpty()
boolean remove(Object o)
boolean removeAll(Collection<?> c)
boolean retainAll(Collection<?> c)
int size()
Object[] toArray()
List :有序,可重复的
方法
void add(int index, E element)
boolean addAll(int index, Collection<? extends E> c)
E get(int index)
int indexOf(Object o)
int lastIndexOf(Object o)
E remove(int index)
E set(int index, E element)
List<E> subList(int fromIndex, int toIndex)
ArrayList :底层也是数组实现,初始容量默认为10 ,新增50%,检索(查询)效率较高,线程不安全
ArrayList()
ArrayList(int initialCapacity)
ArrayList(Collection c)
Vector:底层都是数组实现的 扩容1倍,线程安全
Vector(int initialCapacity, int capacityIncrement)
LinkedList:底层双向链表,插入和删除效率较高,随机访问效率低
Set :无序,不可重复的,最多只能有一个null
HashSet :
LinkedHashSet:(有序的,双向链表),根据元素的hashCode值来存储元素的位置,用链表维护元素的秩序.
TreeSet :无序存入,有序输出,自带比较器 javaSe中唯一一个实现自动排序的集合类型 SortedSet
set 继承Collection的方法
HashSet 实现set接口所以方法
方法
Object clone()
实现add方法
添加,先进行在集合中(检索)查找是否有该元素,如果添加失败,如果没有再把该元素放入集合中
检索机制?
Map:保存一对元素,键值对
key(键):不能重复
value(值):可重复的
方法
void clear()
boolean containsKey(Object key)
boolean containsValue(Object value)
Set<Map.Entry<K,V>> entrySet() 返回键值对视图
boolean equals(Object o)
V get(Object key)
boolean isEmpty()
Set<K> keySet() 返回所有的键
Collection<V> values() 返回所有的值
V put(K key, V value) 添加键值对
V remove(Object key) 根据键删除键值对
default boolean remove(Object key, Object value)
default V replace(K key, V value)
int size()
HashMap
HashMap()
HashMap(int initialCapacity)