標籤:java
Collection介面
Collection是最基本的集合介面,一個Collection代表一組Object,即Collection的元素(Elements)。一些Collection允許相同的元素而另一些不行。一些能排序而另一些不行。JavaSDK不提供直接繼承自Collection的類,Java SDK提供的類都是繼承自Collection的“子介面”如List和Set。
所有實現Collection介面的類都必須提供兩個標準的建構函式:無參數的建構函式用於建立一個空的Collection,有一個Collection參數的建構函式用於建立一個新的Collection,這個新的Collection與傳入的Collection有相同的元素。後一個建構函式允許使用者複製一個Collection。
如何遍曆Collection中的每一個元素?不論Collection的實際類型如何,它都支援一個iterator()的方法,該方法返回一個迭代子,使用該迭代子即可逐一訪問Collection中每一個元素。典型的用法如下:
Iterator it = collection.iterator(); // 獲得一個迭代子 while(it.hasNext()) { Object obj = it.next(); // 得到下一個元素 }由Collection介面派生的兩個介面是List和Set。
Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set
易混淆:
1、java.util.Collection 是一個集合介面。它提供了對集合對象進行基本操作的通用介面方法。Collection介面在Java 類庫中有很多具體的實現。Collection介面的意義是為各種具體的集合提供了最大化的統一操作方式。
2、java.util.Collections 是一個封裝類。它包含有各種有關集合操作的靜態多態方法。此類不能執行個體化,就像一個工具類,服務於Java的Collection架構。
import java.util.ArrayList; import java.util.Collections; import java.util.List; public class TestCollections { public static void main(String args[]) { //注意List是實現Collection介面的 List list = new ArrayList(); int array[] = { 6, 8, 23, 1, 7 }; for (int i = 0; i < array.length; i++) { list.add(array[i]); } Collections.sort(list); for (int i = 0; i < array.length; i++) { System.out.println(list.get(i)); } } } 結果:167823
Java學習篇之---Collection介面