LinkedList集合应用:实现队列题目:

使用LinkedList类实现一个Queue(队列)类。Queue类应该具有以下功能:

  • voidenqueue(E element):将给定的元素添加到队列的末尾。

  • E dequeue():删除并返回队列的第一个元素。如果队列为空,则抛出NoSuchElementException异常。

  • E peek():返回队列的第一个元素。如果队列为空,则抛出NoSuchElementException异常。

  • intsize():返回队列中的元素数量。

  • booleanisEmpty():如果队列为空,则返回true,否则返回false。
class Queue {    // 使用LinkedList实现队列    private LinkedList list;    public Queue() {        // 初始化队列        list = new LinkedList();    }    public void enqueue(E element) {        // 将给定的元素添加到队列的末尾        list.addLast(element);    }    public E dequeue() {        // 删除并返回队列的第一个元素        // 如果队列为空,则抛出NoSuchElementException异常        if (list.isEmpty()) {            throw new NoSuchElementException();        }else {            return list.remove(0);        }    }    public E peek() {        // 返回队列的第一个元素        // 如果队列为空,则抛出NoSuchElementException异常        if (list.isEmpty()) {            throw new NoSuchElementException();        }else {            return list.getFirst();        }    }    public int size() {        // 返回队列中的元素数量        return list.size();    }    public boolean isEmpty() {        // 如果队列为空,则返回true,否则返回false        if (list.size()==0) {            return  true;        }else {            return false;        }    }}

添加测试类:

public class Task {    public static void main(String[] args) {        Queue queue = new Queue();        // 加入队列        queue.enqueue(1);        queue.enqueue(2);        queue.enqueue(3);        // 出队        System.out.println(queue.dequeue());        // 查看队首元素        System.out.println(queue.peek());        // 查看队列大小        System.out.println(queue.size());        System.out.println(queue.isEmpty());    }}