Map大佬是和Collection一个元老级别的,不是List、set一级的
Collection是所有单列集合的父接口,因此在Collection中定义了单列集合(List和Set)通用的一些方法,这些方法可用于操作所有的单列集合。常用方法如下:
public boolean add(E e)
: 把给定的对象添加到当前集合中 。public void clear()
:清空集合中所有的元素。public boolean remove(E e)
: 把给定的对象在当前集合中删除。public boolean contains(E e)
: 判断当前集合中是否包含给定的对象。public boolean isEmpty()
: 判断当前集合是否为空。public int size()
: 返回集合中元素的个数。public Object[] toArray()
: 把集合中的元素,存储到数组中。Map是双值存储结构。常用方法如下:
ArrayList: 使用的是数组结构,对于插入和删除慢,查找快。
此类的iterator和listIterator方法返回的迭代器是快速失败的 :如果在创建迭代器之后的任何时候对列表进行结构修改,除了通过迭代器自己的remove或add方法之外,迭代器将抛出ConcurrentModificationException
此类是线程不同步的(不是线程安全的)
三种构造方法:
ArrayList()
构造一个初始容量为10的空列表。
ArrayList(int initialCapacity)
构造具有指定初始容量的空列表。
ArrayList(Collection<? extends E> c)
按照集合的迭代器返回的顺序构造一个包含指定集合元素的列表。
常用方法:
public void add(int index, E element)
: 将指定的元素,添加到该集合中的指定位置上。
public E get(int index)
:返回集合中指定位置的元素。
public E remove(int index)
: 移除列表中指定位置的元素, 返回的是被移除的元素。
public E remove(Object o)
: 移除列表中指定值元素的一项
public E set(int index, E element)
:用指定元素替换集合中指定位置的元素,返回值的更新前的元素。
public Iterator<E> iterator()
:得到一个迭代器对象
public int siz()
:获得元素的个数
Vector: 类实现了可增长的对象数组。 像数组一样,它包含可以使用整数索引访问的组件。 但是, Vector的大小可以根据需要增大或缩小,以便在创建Vector后添加和删除项目。
四种构造器方法:
Vector()
构造一个空向量,使其内部数据数组的大小为 10 ,其标准容量增量为零。Vector(int initialCapacity)
构造一个具有指定初始容量且容量增量等于零的空向量。Vector(int initialCapacity, int capacityIncrement)
构造具有指定初始容量和容量增量的空向量。Vector(Collection<? extends E> c)
按照集合的迭代器返回的顺序构造一个包含指定集合元素的向量。常用方法:
? 见ArrayList
LinkedList:使用的是双向链表,对于增加删除快,查找慢
public void addFirst(E e)
:将指定元素插入此列表的开头。public void addLast(E e)
:将指定元素添加到此列表的结尾。public E getFirst()
:返回此列表的第一个元素。public E getLast()
:返回此列表的最后一个元素。public E removeFirst()
:移除并返回此列表的第一个元素。public E removeLast()
:移除并返回此列表的最后一个元素。public E pop()
:从此列表所表示的堆栈处弹出一个元素。public void push(E e)
:将元素推入此列表所表示的堆栈。public boolean isEmpty()
:如果列表不包含元素,则返回true。LinkedList是List的子类,List中的方法LinkedList都是可以使用
**迭代器:**它是用来Java中用来遍历元素的工具类
迭代:即Collection集合元素的通用获取方式。在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出来,继续在判断,如果还有就再取出出来。一直把集合中的所有元素全部取出。这种取出方式专业术语称为迭代。
常用方法:
public E next()
:返回迭代的下一个元素。public boolean hasNext()
:向后如果仍有元素可以迭代,则返回 true。public void remove( )
:删除迭代器指针所指向的集合元素它与Iterator是一样的用法,只不过它是专门用来迭代List集合用的
常用方法:
public E next()
:返回迭代的下一个元素。public boolean hasPrevious()
:向前如果仍有元素可以迭代,则返回 true。public E previous()
:返回迭代的上一个元素。public boolean hasNext()
:向后如果仍有元素可以迭代,则返回 true。public void remove( )
:删除迭代器指针所指向的集合元素Set: 不包含重复元素的集合。 更正式地说,集合不包含元素e1和e2 ,使得e1.equals(e2)为true且最多一个存入null元素(利用Comparator比较器)。
HashSet: 散列存放,底层用HashMap实现(哈希表实现),将自己的值作为键存入一个HashMap中,故性质与HashMap相似。
构造方法:
HashSet()
:返回一个默认容量为16和默认加载因子为0.75的对象
HashSet(int initialCapacity)
:返回一个指定容量和默认加载因子为0.75的对象
HashSet(
int initialCapacity,float loadFactor)
:返回一个指定容量和指定加载因子的对象
HashSet(Collection<? extends E> c)
:返回一个指定集合元素的对象
常用方法:
public Iterator<E> iterator()
:得到一个迭代器对象
public boolean add(E e)
:如果该元素不存在,则添加到此集合中
public void clear()
:移除所有元素
public boolean contains(Object o)
:如果此 set 包含指定元素,则返回 true。
public int size()
:获得set中元素的个数
public boolean remove(Object o)
:如果指定元素存在于此 set 中,则将其移除
public int size()
:获得set中元素的个数
原文:https://www.cnblogs.com/huobiokex/p/14017267.html