Java进阶-集合继承结构图总结

所有的实现类:

  • ArrayList:底层是数组。
  • LinkedList:底层是双向链表。
  • Vetor:底层是数组,线程安全的,效率较低,使用较少。
  • HashSet:底层是 HashMap,放到 HashSet 集合中的元素等同于放到 HashMap 集合 key 部分。
  • TreeSet:底层是 TreeMap,放到 TreeSet 集合中的元素等同于放到 TreeMap 集合 key 部分。
  • HashMap:底层是哈希表。
  • Hashtable:底层是哈希表,线程安全的,效率较低,使用较少。
  • Properties:线程安全,并且 key 和 value 只能存储字符串 String。
  • TreeMap:底层是二叉树,TreeMap 集合的 key 可以自动按照大小顺序排序。

List 集合存储元素的特点:

  • 有序可重复
  • 有序:存进去的顺序和取出的顺序相同,每一个元素都有下标。
  • 可重复:存进去1,可以再存储一个1。

Set(Map) 集合存储元素的特点:

  • 无序不可重复
  • 无序:存进去的顺序和取出的顺序不一定相同。另外 Set 集合中元素没有下标。
  • 不可重复:存进去1,不能再存储1了。

SortedSet(SortedMap) 集合存储元素的特点:

  • 无序不可重复,但是集合中的元素可排序
  • 可排序:可以按照大小顺序排序。

Map 集合的 key,就是一个 Set 集合。往 Set 集合放数据,实际上放到了 Map 集合的 key 部分。