首页 > 解决方案 > #homework 如何在java中不使用add()和dequeue而不使用remove()入队?

问题描述

我的代码

import java.util.Queue;
import java.util.LinkedList;
public class QueueQuiz {
    public static void main (String [] args){
        Queue beverages = new LinkedList();
        beverages.offer("shoes");
        beverages.offer("ball"); //enqueue ball without using add()
        System.out.println(beverages.peek() + " is queued first.");
        beverages.poll(); //dequeue ball without using remove()
        System.out.println("Element(s) in the queue: " + beverages);
    }
}

如何解决?我已经将“球”出列,但是当我调用队列中的元素而不是“鞋子”时它会弹出

标签: javaqueue

解决方案


对于 enqueue,使用 offer(),对于 dequeue,使用 poll()。

你做得对。

但是队列遵循FIFO(先进先出)。

    beverages.offer("shoes");

[“鞋”]

    beverages.offer("ball"); 

[“鞋子”,“球”]

    beverages.peek();

一开始就给你“鞋子”。

    beverages.poll();

这将删除第一个元素,即“鞋子”。

现在,饮料 = [“球”]。


推荐阅读