0
我已经实现了一个通用队列(在java中)可以很好地处理不同的数据类型,但是当我尝试使用引用类型实例化队列时,编译器出现“超出界限”错误; Queue<Node<T>> myQueue = new Queue<Node<T>>();
这是我实现的一部分:一个具有参考数据类型的泛型队列
public class Queue<F extends Comparable<? super F>>
{
private static class QueueNode<F extends Comparable<? super F>>
{
private F data;
private QueueNode<F> next;
public QueueNode()
{
next = null;
}
public QueueNode(F val)
{
data = val;
next = null;
}
}
private QueueNode<T> head, rear;
public Queue()
{
head = rear = null;
}
public boolean isEmpty()
{
}
public void enqueue(F el)
{
}
public F dequeue()
{
}
}
我有一个在节点方面实现二叉树,且此队列中的二叉树类中的方法之一使用。任何人都可以帮助我发现问题并解决它! 好的,这正是编译器所说的: 队列> myQueue = new Queue>(); “类型自变量节点不是类型的边界变量F内” “其中T,F是典型值变量: Ť延伸可比类BinarySearchTree声明 F的延伸可比类队列声明”
什么是确切的编译器错误消息队列?请将其添加到您的问题。 –
没有'节点'扩展'可比较的>'? –
只要'T'没有实际的类,就不能像这样定义一个'Queue'(类本身之外)。 'T'必须用_real_类替换。 Node是否通用?如果不是,'队列 myQueue = new Queue ();'应该就好了。 –
skirsch