java 中 Collection,Iterator,Iterable的簡單瞭解
阿新 • • 發佈:2019-01-03
Collection介面:
1 public interface Collection<T> extends Iterable<T>
2 {
3 int size();
4 boolean isEmpty();
5 void clear();
6 boolean contains();
7 boolean add(T x);
8 boolean remove(T x);
9 java.util.Iterator<T> iterator();
10 }
Iterable介面:
1 public interface Iterable<T>
2 {
3 Iterator<T> iterator();
4 }
Iterator介面:
1 public interface Iterator<E>
2 {
3 boolean hasNext();
4 E next();
5 void remove();
6 }
由他們的定義可看出:
這三者的關係是:Collection介面擴充套件了Iterable介面,Iterable介面定義中只包含了一個返回型別為Iterator的方法iterator。
另外需要說一下:Java的集合類主要有兩個介面派生而出:Collection和Map,Collection和Map是Java集合框架的根介面。這裡簡單說一下Collection介面。
Collection介面派生出了Set(無序集合),Queue(佇列),List(有序集合)。
如果訪問List集合中的元素,可以根據索引來訪問,訪問Set集合中的元素,只能通過訪問本身。