java集合面试重点总结

集合介绍

List Set Map 都是接口 List Set继承Collection(Collections是工具类)

List子类(有序,可重复)---ArrayList、Vector、LinkedList

ArrayList、Vector 底层是数组(查找快,增删慢) 前者线程不安全,后者线程安全

Linkedlist 底层是链表查找慢,增删快

Set(无序,唯一)---HashSet TreeSet LinkedHashSet

HashSet 底层是哈希表(hashcode equals)

LinkedHashSet 底层是链表和哈希表--插入有序唯一,链表保证有序、哈希表保证唯一

TreeSet 底层结构是红黑树--唯一有序,自然排序、比较器排序

Map HashMap ThreeMap HashTable

HashMap HashTable 无序 前者非线程安全,效率高,允许有null(kv),后者线程安全,效率低,不允许null值。

TreeMap 有序

在集合中常见的数据结构(掌握)
    ArrayXxx:底层数据结构是数组,查询快,增删慢
    LinkedXxx:底层数据结构是链表,查询慢,增删快
    HashXxx:底层数据结构是哈希表。依赖两个方法:hashCode()和equals()
    TreeXxx:底层数据结构是二叉树。两种方式排序:自然排序和比较器排序

你可能感兴趣的:(javase基础)