2017-09-24 166 views
0

我在測試類中錯誤地執行K和可比較的錯誤。它說:「類型參數K是不是類型變量K的範圍內:類型參數K不在類型變量K的範圍內

二叉搜索樹類:

public class BinarySearchTree<K extends Comparable<K>> implements Tree<K> { 
    public Node(K data, Node left, Node right) { 
     ..... 

} 

測試類:

private <K> int get_height(BinarySearchTree<K>.Node p) { 
    ....... 
} 

我認爲我需要將其更改爲...

private <K> int get_height(BinarySearchTree<K extends Comparable<K>>.Node p) { 
     ....... 
    } 

但是,這導致錯誤,如「意想不到的約束」

+0

嘗試'私人> INT get_height(BinarySearchTree .Node P)'。 – lexicore

+0

@DawoodibnKareem完成。 – lexicore

回答

1

BinarySearchTree需要K其中extends Comparable<K>。聲明你的泛型方法get_height的類型參數時,您可以指定此:

private <K extends Comparable<K>> int get_height(BinarySearchTree<K>.Node p) {...}