java Iterator Iterable Collection AbstractCollection Map關系
java.lang
Interface Iterable<T> 實現該接口就可以使用for-each循環。
java.util
Interface Iterator<E> 用於遍歷Collection,有hasNext(),next(),remove()方法。
java.util
Interface Collection<E> 整個Collection體系中的根接口,父類接口是Iterable。可以生成Iterator。
java.util
Interface Map<K,V> Map並不是Collection,它只是可以生成Collection。Iterator是作用於Collection的,並不能直接用於Map。
java.util
public static Interface Map.Entry<K,V> 是 Map<K,V>的嵌套類,一個Map.Entrymap就是map裏的一個條目。 Map的entrySet()方法返回Set<Map.Entry<K,V>>,可以用於遍歷map。
1 //推薦,尤其是容量大時 2 for (Map.Entry<String, String> entry : map.entrySet()) { 3 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());4 }
java.util
Class AbstractCollection<E> 該抽象類給出類Collection接口最基本的實現,將實現Collection接口的工作最小化。AbstractList, AbstractQueue, AbstractSet, ArrayDeque一個道理。
java.util
Collections和Arrays是工具類,所有方法都是靜態的。Collections一個常用的方法
public static <T> boolean addAll(Collection<? super T> c, T... elements) 將elements添加到collection中,elements可以是一個一個的也可以是數組。
Arrays也有類似的方法 public static <T> List<T> asList(T... a)。
java Iterator Iterable Collection AbstractCollection Map關系