集合有哪些呢?哪些是线程安全的集合呢?简单说说他们的实现
时间: 2024-04-03 21:32:08 浏览: 87
详解java各种集合的线程安全
5星 · 资源好评率100%
Java集合框架中常用的集合类型包括:List、Set、Map、Queue、Deque等。
线程安全的集合主要有以下几种:
1. Vector:是一个动态数组,它的实现方式与ArrayList类似,但是它是线程安全的,因为它的所有方法都是使用synchronized关键字进行同步的。
2. Hashtable:是一个散列表,它的实现方式与HashMap类似,但是它是线程安全的,因为它的所有方法都是使用synchronized关键字进行同步的。
3. ConcurrentHashMap:是一个散列表,它的实现方式与HashMap类似,但是它是线程安全的,因为它使用了分段锁的实现方式,不同的线程可以同时访问不同的段。
4. CopyOnWriteArrayList:是一个动态数组,它的实现方式与ArrayList类似,但是它是线程安全的,因为它使用了写时复制的技术,每当有元素被修改时,它会创建一个新的数组,修改结束后再将新数组赋值给原来的数组。
5. CopyOnWriteArraySet:是一个集合,它的实现方式与HashSet类似,但是它是线程安全的,因为它使用了写时复制的技术,每当有元素被修改时,它会创建一个新的数组,修改结束后再将新数组赋值给原来的数组。
以上就是几种常见的线程安全集合的实现方式。
阅读全文