Java 中队列是一个重要的数据结构,常用于处理先进先出(FIFO)的数据流。以下是几种常见的 Java 队列实现:

  • 数组队列:使用数组实现,适用于队列大小固定或较小的情况。
  • 链表队列:使用链表实现,适用于队列大小不确定或较大的情况。
  • 循环队列:在数组队列的基础上,通过循环利用数组空间,提高空间利用率。

以下是一个简单的数组队列实现示例:

public class ArrayQueue {
    private int[] elements;
    private int size;
    private int front;
    private int rear;

    public ArrayQueue(int capacity) {
        elements = new int[capacity];
        size = 0;
        front = 0;
        rear = -1;
    }

    public boolean isEmpty() {
        return size == 0;
    }

    public boolean isFull() {
        return size == elements.length;
    }

    public void enqueue(int element) {
        if (isFull()) {
            throw new IllegalStateException("Queue is full");
        }
        rear = (rear + 1) % elements.length;
        elements[rear] = element;
        size++;
    }

    public int dequeue() {
        if (isEmpty()) {
            throw new IllegalStateException("Queue is empty");
        }
        int element = elements[front];
        front = (front + 1) % elements.length;
        size--;
        return element;
    }

    public int peek() {
        if (isEmpty()) {
            throw new IllegalStateException("Queue is empty");
        }
        return elements[front];
    }
}

更多关于 Java 队列实现的细节,可以参考本站的 Java 队列实现详解