zoukankan      html  css  js  c++  java
  • java 有哪些常用容器(集合)?

    Collection

    |  ├AbstractCollection  对Collection接口的最小化抽象实现

    |  │ 

    |  ├List  有序集合

    |  │-├AbstractList  有序集合的最小化抽象实现 

    |  │-├ArrayList  基于数组实现的有序集合

    |  │-├LinkedList  基于链表实现的有序集合

    |  │-└Vector  矢量队列

    |  │ └Stack  栈,先进后出

    |  │

    |  ├Set  不重复集合

    |  │├AbstractSet  不重复集合的最小化抽象实现

    |  │├HashSet  基于hash实现的不重复集合,无序

    |  │├LinkedHashSet  基于hash实现的不重复集合,有序

    |  │└SortedSet  可排序不重复集合

    |  │   └NavigableSet  可导航搜索的不重复集合

    |  │     └TreeSet  基于红黑树实现的可排序不重复集合

    |  │

    |  ├Queue  队列

    |  │├AbstractQueue  队列的核心实现

    |  │├BlockingQueue  阻塞队列

    |  │└Deque  可两端操作线性集合

    Map  键值映射集合

    |  ├AbstractMap  键值映射集合最小化抽象实现

    |  ├Hashtable  基于哈希表实现的键值映射集合,key、value均不可为null

    |  ├HashMap  类似Hashtable,但方法不同步,key、value可为null

    |     └LinkedHashMap  根据插入顺序实现的键值映射集合

    |  ├IdentityHashMap  基于哈希表实现的键值映射集合,两个key引用相等==,认为是同一个key

    |  ├SortedMap   可排序键值映射集合

    |     └NavigableMap  可导航搜索的键值映射集合

    |    └WeakHashMap  弱引用建,不阻塞被垃圾回收器回收,key回收后自动移除键值对

    可以比较的点:

    • 有序、无序
    • 可重复、不可重复
    • 键、值是否可为null
    • 底层实现的数据结构(数组、链表、哈希...)
    • 线程安全性

      

    来一道刷了进BAT的面试题?

  • 相关阅读:
    electron之打包成安装程序
    electron之环境安装、启动程序
    微信支付.net官方坑太多,我们来精简
    微信支付官方.net版之坑你没商量
    程序员出路在何方
    简单介绍
    mac中显示隐藏文件
    sublime Text 3 安装emmet
    Andriod学习笔记5:通过NDK在C++中实现日志输出
    Andriod学习笔记4:mac下搭建 Eclipse+CDT 集成开发环境
  • 原文地址:https://www.cnblogs.com/ConstXiong/p/11891423.html
Copyright © 2011-2022 走看看