List:
ArrayList:底层是数组,存储的元素有顺序,元素可以重复,线程不同步。
LinkedList:底层是链表,元素有顺序,元素可以重复,线程不同步。
set
HashSet:底层是哈希表,无序,元素不可以重复,线程不同步。
LinkedHashSet: hashSet的子类,有序。
TreeSet:底层是二叉树结构,对set集合中的元素按照指定的方式排序,线程不同步。
Map
map集合最大的特点就是一次需要存储一对元素。
HashTable:底层是哈希表,不可以存储null键和null值,线程同步
HashMap:底层是哈希表,可以存储null键和null值,线程不同步
TreeMap:底层是二叉树结构,对map集合中的元素按照指定的方式排序,线程不同步。
看到Array就是数组结构,有脚标查询速度非常快,看到link就是链表结构增删速度很快
将非同步集合转成同步的方法,Collections中的方法:List synchronizedList(list);
Map synchronizedMap(map);
Coliction和Collections的区别
Collections是java。util下的类,是针对集合的一个工具类,提供了一系列的静态方法
Collection是java。util下的接口他是各种集合接口的父接口。
暴力反射:Method method= clazz.getDeclaredMethod(“method”,null);
method.setAccessible(true);