翻译时间: 2013年11月15日
原文链接: The interface and class hierarchy diagram for collections with an example program
1. Collections(工具类) 和 Collection(集合顶层接口) 的区别
首先, “Collection” 和 “Collections” 是两个不同的概念. 从下面几幅图可知,“Collection”是集合继承结构中的顶层接口,而 “Collections” 是提供了对集合进行操作的强大方法的工具类.
图1
2. Collection继承结构下图展示了集合类的层次结构关系:
图2
3. Map 类层次结构下图是Map的类层次结构:
图3
4. 相关类汇总接口 | 哈希表 | 可变数组 | 树 | 链表List | 哈希表+链表 |
---|---|---|---|---|---|
Set | HashSet | TreeSet | LinkedHashSet | ||
List | ArrayList | LinkedList | |||
Queue | |||||
Map | HashMap | TreeMap | LinkedHashMap |
下面是说明一些集合类型的简单示例:
import java.util.*; public class Main { public static void main(String[] args) { 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(" " + a1 + " "); 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(" " + l1 + " "); 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(" " + s1 + " "); 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(" " + 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}
相关文章: