JDK原始碼閱讀之Collection分析
阿新 • • 發佈:2019-02-19
Collection介面是所有集合類的父介面,其提供了一些通用的方法,但未提供任何具體的實現,提供此類是為了能統一的以介面的方式使用一些方法,下面我們看看其提供了哪些方法。
//繼承了迭代器的介面,即所有的集合類都是可以使用foreach這種使用方法 public interface Collection<E> extends Iterable<E> { int size();//返回元素個數 boolean isEmpty();//是否為空 boolean contains(Object o);//判斷是否包含元素o Iterator<E> iterator();//返回集合類的迭代器 Object[] toArray();//轉換為陣列,該方法是集合和陣列之間互動的最重要的方法之一 <T> T[] toArray(T[] a);//轉換為具體陣列 boolean add(E e);//新增元素 boolean remove(Object o);//刪除元素 boolean containsAll(Collection<?> c);//判斷c是否包含在集合中 boolean addAll(Collection<? extends E> c);//新增c裡面的所有元素到集合中 boolean removeAll(Collection<?> c);//刪除集合中所包含的c裡面的元素,類似求交集 boolean retainAll(Collection<?> c);//刪除c中不包含的元素,類似求異或操作 void clear();//清除所有元素 boolean equals(Object o);//判斷元素是否相等 int hashCode();//返回hashcode值 } //迭代器介面 public interface Iterable<T> { Iterator<T> iterator();//返回迭代器 } //迭代器介面類 public interface Iterator<E> { boolean hasNext();//判斷是否還有元素 E next();//返回下一個元素 void remove();//刪除元素 }