gpt4 book ai didi

java - 创建一个小队列(泛型)

转载 作者:行者123 更新时间:2023-12-01 10:05:18 25 4
gpt4 key购买 nike

嗨,我正在尝试创建一个队列,它可以重构我的代码以删除 Eclipse 错误消息:“GGCQueue 是原始类型。对泛型类型 GGCQueue 的引用应该参数化”。我想要创建一个永远不会包含超过 10 个元素的队列。我正在尝试遵循“通用”原则来做到这一点,但目前我不知道如何做到这一点。我有以下代码(在类 GGCQueue 中,构造函数 GGCQueue() 是我需要实现它的地方):

import java.util.LinkedList;
import java.util.List;

public class GenericsProblem {

public static void main(String[] args) {

GGCQueue ggcQ = new GGCQueue();
ggcQ.offer(100);
ggcQ.offer(1000);
ggcQ.offer(3.33D);
ggcQ.offer(9);
ggcQ.offer(7);
ggcQ.offer(9.001F);

System.out.println("polling the queue, expecting 100, got:" + ggcQ.poll());
System.out.println("polling the queue, expecting 1000, got:" + ggcQ.poll());
System.out.println("polling the queue, expecting 3.33, got:" + ggcQ.poll());
System.out.println("polling the queue, expecting 9, got:" + ggcQ.poll());
System.out.println("polling the queue, expecting 7, got:" + ggcQ.poll());
System.out.println("polling the queue, expecting 9.001, got:" + ggcQ.poll());

}

}


class GGCQueue<E> {

List<E> q = new LinkedList<E>();

public GGCQueue() {
//TODO MAKE THE SMALL QUEUE <= 10 ELEMENTS
}

public void offer(E element) {
if (q.size() == 10)
return;
q.add(element);
}

public E poll() {
E element = q.remove(0);
return element;
}

}

最佳答案

看起来像你想要的:

 GGCQueue<Number> ggcQ = new GGCQueue<>();

关于java - 创建一个小队列(泛型),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36523934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com