集合:
3.1 collection:集合框架的顶级接口
--List:接口,有序且允许重复的
--ArrayList:底层数据结构是数组,查询快,增删慢。线程不安全,效率高。
–Vector:底层数据结构是数组,查询快,增删慢。 线程安全,效率低。
–Vector相对ArrayList查询慢(线程安全的)
–Vector相对LinkedList增删慢(数组结构)
–LinkedList:底层数据结构是链表,查询慢,增删快。线程不安全,效率高。
–Vector和ArrayList的区别
--Vector是线程安全的,效率低
--ArrayList是线程不安全的,效率高
–共同点:都是数组实现的
–ArrayList和LinkedList的区别
--ArrayList底层是数组结果,查询和修改快
--LinkedList底层是链表结构的,增和删比较快,查询和修改比较慢
–共同点:都是线程不安全的
--set:接口,无序且不允许重复
--HashSet:子类,无序的Set,底层实现是基于散列算法,散列存储 (常用)
--TreeSet:子类,有序的Set,底层实现是二叉树算法实现 (不常用)
3.2 Map<key,value>:集合框架的顶级接口
Map是键值对的形式存取数据
–HashMap<key,value>:子类,无序的Map,底层实现是基于散列算法,散列存储,度是针对key的操作 (常用)
--TreeMap:子类,有序的Map,底层实现是二叉树算法实现,度是针
对key的操作
3.3Collections:类
集合工具类,里面封装了很多针对集合操作的方法(类似于Arrays)
它包含有各种有关集合操作的静态多态方法。此类不能实例化,就像一个工具类,用于对集合中元素进行排序、搜索以及线程安全等各种操作,服务于Java的Collection框架。