我应该在我的insert
-method上签名?我正在努力与泛型。在某种程度上,我想要Comparable<T>
和T
,并且我尝试过<Comparable<T> extends T>
。如何在Java中编写“实现Comparable <T>”的方法签名?
public class Node<T> {
private Comparable<T> value;
public Node(Comparable<T> val) {
this.value = val;
}
// WRONG signature - compareTo need an argument of type T
public void insert(Comparable<T> val) {
if(value.compareTo(val) > 0) {
new Node<T>(val);
}
}
public static void main(String[] args) {
Integer i4 = new Integer(4);
Integer i7 = new Integer(7);
Node<Integer> n4 = new Node<>(i4);
n4.insert(i7);
}
}
为什么你要比较2'Comparator'的? – 2012-07-26 12:03:42
@ TheEliteGentleman我想比较两个'Comparable',所以我可以按照顺序排列它们。 – Jonas 2012-07-26 12:06:41