Java 容器源码分析之 Set

Set 表示由无重复对象组成的集合,也是集合框架中重要的一种集合类型,直接扩展自 Collection 接口。在一个 Set 中,不能有两个引用指向同一个对象,或两个指向 null 的引

Java 容器源码分析之 TreeMap

TreeMap 是一种基于红黑树实现的 Key-Value 结构。在使用集合视图在 HashMap 中迭代时,是不能保证迭代顺序的; LinkedHashMap 使用了双向链表,保证按照插入顺序或者访问顺序进行迭代。但

Java 枚举源码分析

引言 枚举类型是 JDK 5 之后引进的一种非常重要的引用类型,可以用来定义一系列枚举常量。 在没有引入 enum 关键字之前,要表示可枚举的变量,只能使用 public static final 的

Java 容器源码分析之 LinkedHashMap

同 HashMap 一样,LinkedHashMap 也是对 Map 接口的一种基于链表和哈希表的实现。实际上, LinkedHashMap 是 HashMap 的子类,其扩展了 HashMap 增加了双向链表的实现。相较于 HashMap

Java 容器源码分析之 LinkedList

概览 同 ArrayList 一样,LinkedList 也是对 List 接口的一种具体实现。不同的是,ArrayList 是基于数组来实现的,而 LinkedList 是基于双向链表实现的。Li

Java 容器源码分析之 Deque 与 ArrayDeque

Queue 也是 Java 集合框架中定义的一种接口,直接继承自 Collection 接口。除了基本的 Collection 接口规定测操作外,Queue 接口还定义一组针对队列的特殊操作。通常来说,Qu

Java 容器源码分析之 HashMap

HashMap 是对 Map 接口的一种基于哈希表的实现。所谓 Map,就是映射,存储一系列 Key-Value 对,一个键对应一个值,通过键来查找对应的值。HashMap 是一种高效的