面试
Java 中的集合类主要分为两大类:Collection 接口和 Map接口 前者是存储对象的集合类,后者存储的是键值对(key-value) Collection 接口下又分为 List、Set和 Queue 接口,每个接口有其具体实现类,Map接口下有很多实现类,比如 HashMap, LinkedHashMap, TreeMap, Hashtable, ConcurrentHashMap List下有ArrayList(基于动态数组,查询速度快,插入、删除慢),LinkedList(基于双向链表,插入、删除快,查 询速度慢),Vector(线程安全的动态数组,类似于 ArrayList,但开销较大); Set下有HashSet(基于哈希表,元素无序,不允许重复),LinkedHashSet(基于链表和哈希表,维护插入顺序, 不允许重复),TreeSet(基于红黑树,元素有序,不允许重复); Queue下有PriorityQueue(基于优先队列,元素有序),LinkedList(可以作为常规队列使用,先进先出)