Java集合设计时基本接口主要为Collection和Map,请牢牢抓住这个要点,这样你就知道处理数据的结构从顶层分类上是什么样的,Collection主要用来存储数据并提取数据,Map存储键值对数据并根据键值提取数据。当然,集合框架具备简单处理数据的能力。根据下图我们看到,左上角灰色区域里的部分是线程安全且被遗弃的类型,其中Dictionary的替代品的Map,Dictionary在很多语言中代表的就是键值对,例如python中,就有dictionary这种结构,Dictionary虽然被Java遗弃,但是在其他语言中依然很流行。HashTable的替代品是ConcurrentHashMap,Vector的非线程安全替代品的List,Stack目前没有替代品,有需要Stack的地方还是得用Stack。

1、Map

非线程安全:EnumMapIdentityHashMapHashMapLinkedHashMapWeakHashMapTreeMap

线程安全:ConcurrentHashMapConcurrentSkipListMap

2、Collection

Collection接口分为List、Queue和Set三种子接口。

非线程安全:

List:ArrayListLinkedList

Queue:PriorityQueueLinkedListArrayDeque

Set:HashSetLinkedHashSetTreeSet

线程安全:

List:CopyOnWriteArrayList

Queue:

Set:CopyOnWriteArraySet ConcurrentSkipListSet

 

Java集合归纳

相关文章:

  • 2021-12-06
  • 2022-12-23
  • 2021-05-17
  • 2021-05-08
  • 2021-08-19
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-04-23
  • 2021-10-15
  • 2021-09-19
  • 2021-08-11
  • 2021-12-16
  • 2022-12-23
  • 2021-08-17
相关资源
相似解决方案