欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > Java—集合简述

Java—集合简述

2024/11/30 8:52:15 来源:https://blog.csdn.net/qq_56725871/article/details/139663885  浏览:    关键词:Java—集合简述

集合类继承结构图

          Collection|---------------------|          |           |
Set        List         Queue|          |           |
SortedSet  ArrayList   Deque|        LinkedList    |
NavigableSet  Vector    ArrayDeque|         Stack        |
TreeSet                LinkedList|PriorityQueueMap|-----------------|               |
SortedMap     ConcurrentMap|               |
NavigableMap  ConcurrentHashMap|
TreeMap|
HashMap|
LinkedHashMap

详细说明

  1. Collection 接口 是所有集合的根接口,它提供了对集合对象进行基本操作的方法。Set, List, 和 QueueCollection 接口的三个主要子接口。

  2. Set 接口:一个不包含重复元素的集合。

  • SortedSet:保证集合中的元素处于排序状态。

  • NavigableSet:提供了导航方法。
  • TreeSet:基于红黑树实现的 NavigableSet。
  1. List 接口:一个有序集合,可以包含重复元素。

    • ArrayList:基于动态数组实现的 List。
    • LinkedList:基于双向链表实现的 List,也实现了 Deque 接口。
    • Vector:同步的动态数组。
      • Stack:后进先出 (LIFO) 的栈。
  2. Queue 接口:通常用于按顺序处理元素。

    • Deque:双端队列,可以从两端添加和移除元素。
      • ArrayDeque:基于动态数组实现的 Deque。
      • LinkedList:也实现了 Deque 接口。
    • PriorityQueue:基于优先级堆的队列。
  3. Map 接口:用于存储键值对映射,不属于 Collection 接口的子接口。

    • SortedMap:保证键处于排序状态。
      • NavigableMap:提供了导航方法。
        • TreeMap:基于红黑树实现的 NavigableMap。
    • ConcurrentMap:提供线程安全的并发映射。
      • ConcurrentHashMap:高效的并发哈希映射。
    • HashMap:基于哈希表实现的 Map。
      • LinkedHashMap:维护元素插入顺序或访问顺序的 HashMap。

总结

在Java集合框架中,线程安全和有序性是两个重要的概念。线程安全表示一个类的实例可以安全地被多个线程访问而不会产生数据不一致的情况,而有序性则表示集合中的元素是否可以按照某种顺序进行访问或遍历。下表总结了Java集合框架中常见类的线程安全性和有序性:

需要注意的是,虽然HashTable和ConcurrentHashMap都是线程安全的,但是ConcurrentHashMap通过分段锁实现更好的并发性能,推荐在多线程环境中使用。另外,ArrayList和LinkedList都是有序的,但是它们的内部实现和性能特点有所不同,需要根据具体的需求进行选择。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com