[译]Java集合接口和类的继承关系图

2016-10-08  本文已影响1747人  WHOKNOWME

1. Collection vs Collections
首先,"Collection" and "Collections"是两个不同的概念,从下面的继承关系图中我们可以看到,"Collection"是一个基础接口类,而"Collections"是一个静态的类,它提供了一些静态方法来操作某些集合类型。

Collection Vs Collections
2. 集合的类继承关系图
下图说明了集合的继承关系。 java-collection-hierarchy
3. Map的继承关系图 MapClassHierarchy

4. 总览

collection-summary

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
    {Language=Java, Website=programcreek.com, Windows=XP}

需要说明一下,上面的输出结果中,HashSet的输出是无序的,也就是说跟放入的顺序无关。而LinkedList输出的顺序就是插入元素的顺序。

上一篇下一篇

猜你喜欢

热点阅读