java写一个queue类
时间: 2024-10-09 22:10:47 浏览: 20
在Java中,我们可以使用内置的`java.util.Queue`接口来创建队列。这里我将简单展示如何使用`LinkedList`实现一个简单的Queue,因为`LinkedList`实现了`Queue`接口,并支持在其两端进行添加和删除操作。
```java
import java.util.LinkedList;
import java.util.Queue;
public class MyQueue<T> {
private LinkedList<T> queue;
public MyQueue() {
this.queue = new LinkedList<>();
}
// 添加元素到队尾
public void enqueue(T item) {
queue.add(item);
}
// 从队头移除并返回元素
public T dequeue() {
if (queue.isEmpty()) {
throw new IllegalStateException("Queue is empty");
}
return queue.removeFirst();
}
// 查看队头元素,但不移除
public T peek() {
if (queue.isEmpty()) {
throw new IllegalStateException("Queue is empty");
}
return queue.getFirst();
}
// 检查队列是否为空
public boolean isEmpty() {
return queue.isEmpty();
}
public int size() {
return queue.size();
}
public static void main(String[] args) {
MyQueue<String> queue = new MyQueue<>();
queue.enqueue("One");
queue.enqueue("Two");
System.out.println(queue.peek()); // 输出 "One"
System.out.println(queue.dequeue()); // 输出 "One",然后 "Two"
}
}
```
这个`MyQueue`类是一个基本的队列实现,包含了常见的操作如`enqueue`(入队)、`dequeue`(出队)以及`peek`(查看队首元素)等。
阅读全文