三个接口 iterator(迭代) ,collection(继承接口iterator),Map
collection 下面有List和Set接口,Set不允许重复,具体实现由hashSet,TreeSet(有排序的),List为索引数组的,具体的实现有ArrayList(泛型List),LinkedList链表list,插入块查询慢,Voctor线程安全的List
Map下面主要有HashMap,correntHashMap(线程安全的correntrentLock),hashTable线程安全的,线程安全,并且锁分离。
ConcurrentHashMap内部使用段(Segment)来表示这些不同的部分,每个段其实就是一个小的hash table,它们有自己的锁。只要多个修改操作发生在不同的段上,它们就可以并发进行.
LinkedHashMap
LinkedHashMap保存了记录的插入顺序,在用Iteraor遍历LinkedHashMap时,先得到的记录肯定是先插入的,在遍历的时候会比HashMap慢,有HashMap的全部特性。
TreeHashMap 能够把它保存的记录根据键排序,默认是按键值的升序排序(自然顺序)
三个接口 iterator(迭代) ,collection(继承接口iterator),Map
collection 下面有List和Set接口,Set不允许重复,具体实现由hashSet,TreeSet(有排序的),List为索引数组的,具体的实现有ArrayList(泛型List),LinkedList链表list,插入块查询慢,Voctor线程安全的List
Map下面主要有HashMap,correntHashMap(线程安全的correntrentLock),hashTable线程安全的,线程安全,并且锁分离。
ConcurrentHashMap内部使用段(Segment)来表示这些不同的部分,每个段其实就是一个小的hash table,它们有自己的锁。只要多个修改操作发生在不同的段上,它们就可以并发进行.
LinkedHashMap
LinkedHashMap保存了记录的插入顺序,在用Iteraor遍历LinkedHashMap时,先得到的记录肯定是先插入的,在遍历的时候会比HashMap慢,有HashMap的全部特性。
TreeHashMap 能够把它保存的记录根据键排序,默认是按键值的升序排序(自然顺序)
网友评论