JAVA集合容器的线程安全性
一、Java中的集合容器
Java中有单例集合和双例集合,如下:
单例集合:List接口、Set接口,继承自Collection接口。
双例集合:Map接口
二、容器的线程安全性
常用集合 | 安全性 | 特点 |
---|---|---|
ArrayList | 线程不安全 | 底层数组实现,查询效率高,增删效率低 |
LinkedList | 线程不安全 | 底层双链表实现,查询效率低,增删效率高 |
Vector | 线程安全 | 底层数组实现,加入了同步机制(synchronized),效率低 |
HashSet | 线程不安全 | 底层HashMap实现,增删查效率都比较高 |
HashMap | 线程不安全 | 底层哈希表(数组;链表;红黑树)实现,增删查效率都比较高 |