美文网首页
JAVA 常见数据结构

JAVA 常见数据结构

作者: 小小卒_oO_ | 来源:发表于2019-03-21 18:56 被阅读0次


    实现Collection 接口

    * List 接口

    常用方法:add,get

    • ArrayList 访问任意位置效率高,增删效率可能会低
    • LinkedList 双向链表,两端效率高

    * Set 接口

    常用方法:add,contains(判断有无)

    • HashSet 不重复、无序。(内部使用 HashMap 的键这一列来存放数据)
      • LinkedHashSet 继承自HashSet,用链表维护元素之间的顺序
    • TreeSet 不重复、有序。(内部使用 TreeMap 的键这一列来存放数据)

    实现Map 接口

    常用方法:put,get

    • HashMap 内部存储结构:哈希表(散列表)。键无序、不重复。
      • LinkedHashMap 继承自HashMap, 底层额外维护了一个双向链表来维持数据有序。
    • WeakHashMap 改进的HashMap,对key实行“弱引用”
    • TreeMap 内部存储结构:二叉树(红黑树)。键有序、不允许null。
    • ConcurrentHashMap 线程安全
    • Hashtable 线程安全,元素不可为空

    相关文章

      网友评论

          本文标题:JAVA 常见数据结构

          本文链接:https://www.haomeiwen.com/subject/rplcvqtx.html