我正在尝试使用 Comparable<T>
在 Java 中实现泛型界面。
public static <T> T[] sort(T[] a) {
//need to compare 2 elements of a
}
比方说,我想覆盖 compareTo
上述类型的方法T
在Comparable
界面。 IE。我需要比较我的类型的两个元素 T
,我将如何做?我不知道我的 T
类型将是。
最佳答案
您需要为您的方法设置类型约束。
public static <T extends Comparable<? super T>> T[] sort (T[] a)
{
//need to compare 2 elements of a
}
这会强制类型 T
具有 compareTo(T other)
方法。这意味着您可以在您的方法中执行以下操作:
if (a[i].compareTo(a[j]) > 0) }
}
关于java - 在 Comparable 中使用泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4229253/