Java 集合的接口和类层次结构图

原文地址:http://www.programcreek.com/2009/02/the-interface-and-class-hierarchy-for-collections/

1. Collection 与 Collections

首先,CollectionCollections 是两个不同的概念。 从下面的层次结构图中可以看出,Collection 是集合层次结构中的根,而 Collections 是一个类,它为某些集合类型提供静态操作方法。

2. Collection 的类层次结构

下图展示了 Collection 的类层次结构:

3. Map 的类层次结构

下图展示了 Map 的类层次结构:

4. 总结

5. 小例子

以下是一些简单的例子来说明不同的集合类型:

List<String> a1 = new ArrayList<String>();
a1.add("Program");
a1.add("Creek");
a1.add("Java");
a1.add("Java");
System.out.println("ArrayList Elements");
System.out.print("\t" + a1 + "\n");

List<String> l1 = new LinkedList<String>();
l1.add("Program");
l1.add("Creek");
l1.add("Java");
l1.add("Java");
System.out.println("LinkedList Elements");
System.out.print("\t" + l1 + "\n");

Set<String> s1 = new HashSet<String>(); // or new TreeSet() will order the elements;
s1.add("Program");
s1.add("Creek");
s1.add("Java");
s1.add("Java");
s1.add("tutorial");
System.out.println("Set Elements");
System.out.print("\t" + s1 + "\n");

Map<String, String> m1 = new HashMap<String, String>(); // or new TreeMap() will order based on keys
m1.put("Windows", "2000");
m1.put("Windows", "XP");
m1.put("Language", "Java");
m1.put("Website", "programcreek.com");
System.out.println("Map Elements");
System.out.print("\t" + m1);

打印结果为:

ArrayList Elements
    [Program, Creek, Java, Java]
LinkedList Elements
    [Program, Creek, Java, Java]
Set Elements
    [tutorial, Creek, Program, Java]
Map Elements
    {Windows=XP, Website=programcreek.com, Language=Java}

results matching ""

    No results matching ""