Collection接口
提供了对集合的基本的增删改查的操作,并实现了Iterator接口
方法列表:
查询方法
int size():返回集合元素的数量,如果此集合的所含的元素大于结合容量的最大值,则返回其最大值。
boolean isEmpty(): 如果集合没有包含任何一个元素,则返回true
boolean contains(Object o):集合中没有指定元素存在,比较的方式为两个非null元素通过equals方法的返回结果相等。所以需要重写对象的equals方法
Iterator<E> iterator():返回此集合的迭代器对象,对于迭代器遍历的顺序没有保障,不能依赖于迭代器来保证遍历的顺序,除非这个集合是一种能够保证顺序的类型的实例
Object[ ] toArray():返回包含整个集合所有元素的Object类型数组,元素在数组中的顺序和通过迭代器遍历的顺序是一致的。
<T> T[ ] toArray(T[ ] a):返回运行时指定类型的元素类型数组,其中需要一个该类型数组的一个引用作为参数,如果这个参数的容量足够大,则集合所有元素都将保存到参数数组中,多余数组空间设为默认值;但是参数数组的大小集合的大小,则在方法内创建一个新的数组来容纳集合所有元素,并将这个数组的引用返回。返回数组的另一种方式,通过在参数里构造一维0元素的数组来实现 String[] y = x.toArray(new String[0]);
修改方法
boolean add(E e):如果此方法的结果使得集合发生改变则返回true;抛出异常:由于各种各样的原因导致会出现添加元素出现异常,其中包括ClassCastException(添加时类型转换发生异常)、UnsupportOperationException(此集合没有实现add方法的接口)、NullPointException(添加的元素为null,但是此集合不允许null元素的添加到集合中)、IllegalArgumentException(如果被添加的元素的某些属性不允许被添加到这个集合当中则抛出此异常)、IlegalStateException(由于集合的元素的插入限制,不允许在此时插入则抛出异常)
boolean remove(Object o):删除集合中等于参数的集合元素,如果集合中含有一个或多个与参数相等的元素则返回true,但是只会删除集合中第一个与参数相等的元素。抛出异常:ClassCastException(参数类型与集合元素类型不相容)、NullPointException(参数为null)、UNsupportOperationException(此集合没有实现此接口方法)
批量操作
boolean containsAll( Collection<?> c):如果此集合含有所有参数集合的元素则返回true
boolean addAll(Collection<? extends E> c):添加参数集合中所有元素到此集合当中
boolean removeAll(Collection<?> c):删除所有参数集合和此集合相交的所有元素
boolean retianAll(Collection<?> c):保留所有参数集合和此集合的相交的元素
void clear():将此集合清空
Object方法
boolean equals()
int hashCode()
java8 新特性
**default boolean removeIf(Predicate<? super E> filter) **用于lambda表达式的删除元素的方法
default Spliterator<E> spliterator()返回此集合的Spliterator,用于lambda表达式
default Stream<E> stream():返回以这个集合为源的的顺序流,用于java8 流API
default Stream<E> parallelStream():返回以此集合为源的并行流对象,用于java8 并行流API