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