Java队列的基本操作代码实现
时间: 2023-09-11 18:06:27 浏览: 47
Java队列的基本操作包括入队、出队、获取队头元素和判断队列是否为空。下面是Java队列的基本操作代码实现:
1.定义队列类Queue:
```java
public class Queue<T> {
private Node<T> front; // 队头指针
private Node<T> rear; // 队尾指针
// 节点类
private static class Node<T> {
private T data; // 数据域
private Node<T> next; // 指针域
public Node(T data, Node<T> next) {
this.data = data;
this.next = next;
}
}
// 入队操作
public void offer(T item) {
Node<T> newNode = new Node<>(item, null);
if (isEmpty()) {
front = rear = newNode;
} else {
rear.next = newNode;
rear = newNode;
}
}
// 出队操作
public T poll() {
if (isEmpty()) {
throw new NoSuchElementException("Queue is empty.");
}
T item = front.data;
front = front.next;
if (front == null) {
rear = null;
}
return item;
}
// 获取队头元素
public T peek() {
if (isEmpty()) {
throw new NoSuchElementException("Queue is empty.");
}
return front.data;
}
// 判断队列是否为空
public boolean isEmpty() {
return front == null;
}
}
```
2.测试队列类Queue:
```java
public class QueueTest {
public static void main(String[] args) {
Queue<Integer> queue = new Queue<>();
queue.offer(1);
queue.offer(2);
queue.offer(3);
System.out.println(queue.peek()); // 输出:1
System.out.println(queue.poll()); // 输出:1
System.out.println(queue.poll()); // 输出:2
System.out.println(queue.poll()); // 输出:3
System.out.println(queue.isEmpty()); // 输出:true
}
}
```