/**
*
* Collection
* List(存取有序,有索引,可重复)
* ArrayList:底层数组实现,线程不安全,查改快,增删慢
* LinkedList:底层是链表实现,线程不安全,查改慢,增删快
* Vector:底层是数组实现,线程安全,增删改查都比较慢
*
* 如果查找多用ArrayList,如果增删多用LinkedList,如果增删改查都多就用ArrayList
*
* Set(存取无序,无索引,不可重复)
* HashSet:底层用哈希算法实现
* LinkedHashSet:底层是链表实现,但也可以保持元素的唯一性,和HashSet一样
* TreeSet:底层是二叉树算法实现
* 开发中常用的是HashSet,效率高
* 面试中TreeSet比较多,主要是排序方式以及区别
*
* Map
* HashMap:底层是哈希算法实现的,针对键
* LinkeHashMap:底层是链表实现的,亦可以保持元素的唯一性,针对键
* TreeMap:底层是二叉树算法实现的,针对键
* 开发中HashMap用的比较多
*
* 单列集合
* 如果要求不能重复用HashSet,保证有序用TreeSet,没有要求用ArrayList
*
* 双列集合
* 如果要求不能重复用HashMap,要求有序用TreeMap
*
*
*
*
*/ |
|