天道不一定酬所有勤
但是,天道只酬勤
Hollis出品的全套Java面试宝典不来了解一下吗?

Java中集合类的关系图谱

Hollis出品的全套Java面试宝典不来了解一下吗?

Collection 和 Collections

首先要明确的是,Collection 和 Collections是两个不同的概念。Collection是一个接口,所有的集合类(除Map外)都要继承(实现)自该接口。它提供了对集合对象进行基本操作的通用接口方法。Collections是一个包装类,它包含有各种有关集合操作的静态多态方法。(Collections是一个工具类,不能实例化)

CollectionVsCollections

Collection家族关系图

java-collection-hierarchy

Map家族的关系图

MapClassHierarchy-600x354

关系图谱

collection-summary

代码示例

下面是一个简单的例子来说明一些集合类型:

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}
赞(0)
如未加特殊说明,此网站文章均为原创,转载必须注明出处。HollisChuang's Blog » Java中集合类的关系图谱
Hollis出品的全套Java面试宝典不来了解一下吗?

评论 1

  1. #1

    看了博主很多文章 受益匪浅 感觉博主应该是一位经验丰厚的长者,但是文章段落中又不乏风趣 后面才知道博主是93年的 更让人刮目相看

    mrDown3年前 (2021-09-07)回复

HollisChuang's Blog

联系我关于我