JAVA非并发容器--ArrayDeque, LinkedList

概述

queue/deque非并发容器意义不大,因为queue在工程实践中天生就是多个线程操作的,只有并发的queue才会被大量使用,例如在多线程任务执行框架excutors中,就大量使用了LinkedBlockingQueue等.
非并发容器框架如下:


JAVA非并发容器--ArrayDeque, LinkedList_第1张图片
javaqueue.png

queue和deque

queue是单项队列,改接口定义如下:


JAVA非并发容器--ArrayDeque, LinkedList_第2张图片
queue.png

add()方法增加一个元素到队列尾,如果容器已经满了抛出一个异常,offer()方法增加一个元素到队列尾部,如果容器满了,返回false, offer方法更加友好。
deque是双向队列,可以从队列头部增加和删除元素,也可以从队列尾部增加和删除元素,其定义如下:


JAVA非并发容器--ArrayDeque, LinkedList_第3张图片
deque.png

你可能感兴趣的:(JAVA非并发容器--ArrayDeque, LinkedList)