Java之集合框架圖及 Collection和Collections的區別及用法總結
Java中Collection和Collections的區別:
1、Java集合框架圖:
2、Collection介面:
java.util.Collection是一個集合介面,其中定義了對集合物件有關操作的普通介面方法。
Set和List集合型別(不包含Map)是常用子介面 。
根據上面的Java集合框架圖可知其具體子介面及各實現類。
Collection├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
2、java.util.Collections 是一個包裝類。它包含有各種有關集合操作的靜態多型方法,實現了對集合元素的排序、取極值、批量複製、集合結構轉換、迴圈移位元以及匹配性檢
查等功能。
此類不能例項化,就像一個工具類,服務於Java的Collection框架。
常用到的方法:
(1)、public static void sort(List list);--根據元素的自然順序對指定列表按升序排序。
(2)、public static void reverse(List list);--逆序反轉,反轉指定列表中元素的順序。
(3)、public static void shuffle(List list);--使用預設隨機源隨機更改指定列表的元素順序。
(4)、public static void copy(List deslist,List sourcelist);--將所有元素從一個列表複製到另一個列表。
(5)、public static ArrayList list(Enumeration e);--返回一個數組列表,按照列舉結構中元素的原有順序包含其中的所有元素。
(6)、public static int frequency(Collection c,Object o);--返回指定collection中等於指定物件的元素數。
(7)、public static T max(Collection c);--按照元素的自然順序,返回指定collection中的最大元素。
(8)、public static T min(Collection c);--按照元素的自然順序,返回指定collection中的最小元素。
(9)、public static void rotate(List list,int distance);--根據指定的距離迴圈移動指定列表的元素。
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();
double array[] = { 11, 12, 45, 23, 123 };
for (int i = 0; i < array.length; i++) {
list.add(new Double(array[i]));
}
Collections.sort(list);
for (int i = 0; i < array.length; i++) {
System.out.println(list.get(i));
}
}
}
執行輸出結果為:
11.0 12.0 23.0 45.0 123.0