【发布时间】:2010-10-05 19:13:19
【问题描述】:
我正在尝试创建一个填充了我自己的类对象的 FIFO 队列。
我找到了这个例子,但是如果我用 替换 它将不起作用:
import java.util.LinkedList;
public class SimpleQueue<E> {
private LinkedList<E> list = new LinkedList<E>();
public void put(E o) {
list.addLast(o);
}
public E get() {
if (list.isEmpty()) {
return null;
}
return list.removeFirst();
}
public Object[] getAll() {
Object[] res = new Object[list.size()];
for (int i = 0; i < res.length; i++) {
res[i] = list.get(i);
}
list.clear();
return res;
}
public E peek() {
return list.getFirst();
}
public boolean isEmpty() {
return list.isEmpty();
}
public int size() {
return list.size();
}
}
【问题讨论】:
-
泛型应该是“通用的”。想要将类型变量名称更改为
PCB会使您看起来好像有一个特定的类型作为参数。无论如何,您可能只是在进行搜索和替换时创建了一个类型;使用“PCB”在语法上没有任何问题,只是看起来很难看。 -
如何将
E替换为PCB? -
“它不起作用”。什么不起作用?它不会编译吗?
-
如果它没有编译,错误信息是什么以及代码中的哪里出现了错误。如果它编译你看到什么行为?如果不向我们提供必要的信息,我们将无法真正帮助您解决问题。我建议阅读catb.org/esr/faqs/smart-questions.html 作为如何提问的参考。
标签: java class object queue fifo