在 Java 中,Queue(队列) 是一种集合(Collection),用于按照特定顺序存储和访问元素,通常遵循 FIFO(先进先出,First In First Out) 原则。
Queue 是 Java 集合框架(java.util)中的一个接口:
public interface Queue<E> extends Collection<E>
它的核心特点是:
Queue 对操作失败有两种处理方式:
| 方法 | 说明 |
|---|---|
add(e) |
入队,失败抛异常 |
remove() |
出队,队列空抛异常 |
element() |
查看队头,不删除 |
| 方法 | 说明 |
|---|---|
offer(e) |
入队,失败返回 false |
poll() |
出队,空返回 null |
peek() |
查看队头,空返回 null |
✅ 实际开发中更推荐使用 offer / poll / peek
Queue<Integer> queue = new LinkedList<>();
queue.offer(1);
queue.offer(2);
System.out.println(queue.poll()); // 1
Queue<Integer> queue = new ArrayDeque<>();
Queue<Integer> pq = new PriorityQueue<>();
pq.offer(3);
pq.offer(1);
pq.poll(); // 1
ArrayBlockingQueueLinkedBlockingQueueConcurrentLinkedQueue用于多线程环境
Queue<String> queue = new LinkedList<>();
queue.offer("A");
queue.offer("B");
queue.offer("C");
while (!queue.isEmpty()) {
System.out.println(queue.poll());
}
输出:
A
B
C
| 对比 | Queue | Stack |
|---|---|---|
| 顺序 | FIFO | LIFO |
| 入 | offer | push |
| 出 | poll | pop |
Java 中的 Queue 是一种用于存储“等待处理元素”的集合,通常先进先出,常用于任务排队和数据处理。
如果你愿意,我也可以帮你讲:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。