HappyLei

记录点点滴滴的进步

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

数组,尺寸固定,只能保存基础数据类型,而容器解决了这些问题。

Java容器分为两类:Collection ,map;

基于数组(Array)实现的容器:存储空间联系,查找性能高;

基于链表(Linked)实现的容器:存储空间离散,插入和删除性能高。

Queue队列,访问受限的容器,只能访问队头和队尾;

Set:集合元素无重复;

ArrayDeque:  数组双端队列

PriorityQueue: 优先级队列

DelayQueue:延期阻塞队列(阻塞队列实现了BlockingQueue接口)

ArrayBlockingQueue, 基于数组的并发阻塞队列,队首与队尾共享一个锁

LinkedBlockingQueue, 基于链表的FIFO阻塞队列,队首与队尾分别有一个独立锁

LinkedBlockingDeque, 基于链表的FIFO双端阻塞队列

BlockingQueue: 阻塞队列;Concurrent:并发

ConcurrentLinkedQueue: 基于链表的并发队列

ConcurrentSkipListSet:基于”跳表”实现的并发集合容器;

CopyOnWriteArrayList: 读并发的List实现,适合用在“读多,写少”的“并发”应用中;

CopyOnWriteArraySet:读并发的Set实现,适合用在“读多,写少”的“并发”应用中;

SynchronousQueue: 没有数据缓冲的BlockingQueue(存一个之后马上要取一个)

各个Collection接口下一些主要容器:

Map接口下的一些主要容器:

 

java.util.Collections类提供了一些可以在多线程操作下,线程安全的容器包装方法。

synchronizedCollection 返回指定 collection 支持的同步(线程安全的)collection。

synchronizedList(List<T> list) 返回指定列表支持的同步(线程安全的)列表。

synchronizedMap(Map<K,V> m) 返回由指定映射支持的同步(线程安全的)映射。

synchronizedSet(Set<T> s) 返回指定 set 支持的同步(线程安全的)set。

synchronizedSortedMap(SortedMap<K,V> m) 返回指定有序映射支持的同步(线程安全的)有序映射。

synchronizedSortedSet(SortedSet<T> s) 返回指定有序 set 支持的同步(线程安全的)有序 set。

 

 参考资料:

http://www.ibm.com/developerworks/cn/java/j-jtp04186/

http://blog.csdn.net/guangcigeyun/article/details/8278349

http://blog.csdn.net/guangcigeyun/article/details/8278349

http://ifeve.com/java-synchronousqueue/

http://zy19982004.iteye.com/category/243417

 

posted on 2014-06-21 12:46  HappyLei  阅读(285)  评论(0编辑  收藏  举报