Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java API 和框架

Java 类参考

Java 有用资源

Java - Queue 接口



Queue 接口

Queue 接口在 java.util 包 中提供,并且它实现了 Collection 接口。Queue 实现 FIFO,即先进先出。这意味着先输入的元素是先删除的元素。Queue 通常用于在处理元素之前保存元素。一旦处理了一个元素,它就会从 Queue 中删除,然后选择下一个项目进行处理。

Queue 接口声明

public interface Queue<E>
   extends Collection<E>

Queue 接口方法

以下是 Queue 接口的所有实现类都实现的重要 Queue 方法列表 -

序号 方法和描述
1 boolean add(E e)

如果可以在不违反容量限制的情况下立即将指定的元素插入到此 Queue 中,则此方法会插入指定的元素,成功时返回 true,如果当前没有可用空间则抛出 IllegalStateException。

2 E element()

此方法检索但不删除此 Queue 的头部。

3 boolean offer(E e)

如果可以在不违反容量限制的情况下立即将指定的元素插入到此 Queue 中,则此方法会插入指定的元素。

4 E peek()

此方法检索但不删除此 Queue 的头部,或者如果此 Queue 为空则返回 null。

5 E poll()

此方法检索并删除此 Queue 的头部,或者如果此 Queue 为空则返回 null。

6 E remove()

此方法检索并删除此 Queue 的头部。

继承的方法

此接口继承自以下接口 -

  • java.util.Collection
  • java.lang.Iterable

实现 Queue 的类

以下是实现 Queue 以使用 Queue 功能的类 -

  • LinkedList
  • ArrayDeque
  • PriorityQueue
Classes that Implement Queue

扩展 Queue 的接口

以下是扩展 Queue 接口的接口 -

  • Deque
  • BlockingQueue
  • BlockingDeque
Interfaces that Extend Queue

Queue 接口示例

在此示例中,我们使用 LinkedList 实例来显示 Queue 的 add、peek 和 size 操作。

package com.tutorialspoint;

import java.util.LinkedList;
import java.util.Queue;

public class QueueDemo {
   public static void main(String[] args) {
      Queue<Integer> q = new LinkedList<>();
      q.add(6);
      q.add(1);
      q.add(8);
      q.add(4);
      q.add(7);
      System.out.println("The queue is: " + q);
      int num1 = q.remove();
      System.out.println("The element deleted from the head is: " + num1);
      System.out.println("The queue after deletion is: " + q);
      int head = q.peek();
      System.out.println("The head of the queue is: " + head);
      int size = q.size();
      System.out.println("The size of the queue is: " + size);
   }
}

输出

The queue is: [6, 1, 8, 4, 7]
The element deleted from the head is: 6
The queue after deletion is: [1, 8, 4, 7]
The head of the queue is: 1
The size of the queue is: 4
广告