ArrayBlockingQueue方法摘要

如题所述

ArrayBlockingQueue 提供了一系列方法来操作队列中的元素,包括添加、移除、检查元素存在、获取元素等操作。以下是该类的主要方法摘要:


1. void clear(): 自动移除队列中的所有元素。


2. boolean contains(Object o): 检查队列是否包含指定元素,返回 true 或 false。


3. int drainTo(Collection c): 移除并添加所有可用元素到指定集合。


4. int drainTo(Collection c, int maxElements): 限制移除元素的数量,最多移除指定数量。


5. Iterator iterator(): 返回一个迭代器,按正确顺序遍历队列中的元素。


6. boolean offer(E o): 向队列尾部添加元素,如果队列满则返回 false。


7. boolean offer(E o, long timeout, TimeUnit unit): 等待指定时间后尝试添加元素,如果队列满则等待。


8. E peek(): 查看队列头部元素但不移除,空队列返回 null。


9. E poll(): 移除并返回队列头部元素,空队列返回 null。


10. E poll(long timeout, TimeUnit unit): 等待指定时间后移除头部元素,无元素时等待。


11. void put(E o): 添加元素到队列尾部,如有必要,会等待空间。


12. int remainingCapacity(): 返回队列在理想情况下可容纳的未阻塞元素数。


13. boolean remove(Object o): 移除队列中指定元素的第一个实例,如果存在。


14. int size(): 返回队列中元素的数量。


15. E take(): 移除并返回队列头部元素,队列空时会一直等待。


16. Object[] toArray(): 返回包含队列所有元素的数组。


17. T[] toArray(T[] a): 返回一个数组,包含队列元素,数组类型与指定数组相同。


18. String toString(): 返回队列的字符串表示。


ArrayBlockingQueue 基于 java.util.AbstractQueue,继承了 add, addAll, element, remove 方法;基于 java.util.AbstractCollection,提供了 containsAll, isEmpty, removeAll, retainAll 方法;同时也实现了 java.lang.Object 的相关方法。此外,它还是 java.util.concurrent.BlockingQueue 和 java.util.Queue 的实现者,提供了 add 和 element, remove 等接口方法,以及 java.util.Collection 的一些基本操作方法。



扩展资料

public class ArrayBlockingQueueextends AbstractQueueimplements BlockingQueue, java.io.Serializable一个由数组支持的有界阻塞队列。此队列按 FIFO(先进先出)原则对元素进行排序。队列的头部 是在队列中存在时间最长的元素。队列的尾部 是在队列中存在时间最短的元素。新元素插入到队列的尾部,队列检索操作则是从队列头部开始获得元素。

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜