上一章介绍了ArrayList、LinkedList和ArrayDeque, 它们的一个共同特点是:查找元素的效率都比较低,都需要逐个进行比较,本章介绍各种Map和Set, 它们的查找效率要高得多。Map和Set都是接口,Java中有多个实现类,主要包括HashMap、HashSet、TreeMap、TreeSet、LinkedHashMap、LinkedHashSet、EnumMap、EnumSet等,它们都有什么用?有什么不同?是如何实现的?本章进行深入剖析,我们先从最常用的HashMap开始。