集合
Collection
- List(存取有序,有索引,可以重复)
1.1.ArrayList:底层是数组实现的,线程不安全,查找修改快,增删慢
1.2.LinkedList:底层是链表实现的,线程不安全,增删快,查找修改慢
1.3.Vector:底层是数组实现的,线程安全,增删查改都慢 - Set(存取无序,无索引,不可以重复)
2.1.HashSet:底层是哈希算法实现的
2.2.LinkedHashSet:底层是链表实现的,但是也可以保证元素唯一,和HashSet原理一样
2.3.TreeSet底层是二叉树算法实现
注:一般开发的时候不需要对存储的数据排序,所以开发的时候大多数会使用HashSet,HashSet的效率比较高。面试的时候TreeSet问到的时候比较多。 - Map
3.1.HashMap:底层是哈希算法,针对键
3.2LinkedHashMap:底层是链表,针对键
3.3.TreeMap:底层是二叉树算法,针对键
3.4.HashTable:是线程安全的