我正在尝试使用Comparable<T>接口在Java中实现泛型.
public static <T> T[] sort(T[] a) {
//need to compare 2 elements of a
}
Run Code Online (Sandbox Code Playgroud)
比方说,我想在接口中覆盖compareTo上述类型的方法.即我需要比较我的类型的两个元素,我将如何做?我不知道我的类型是什么.TComparableTT
您需要在方法上设置类型约束.
public static <T extends Comparable<? super T>> T[] sort (T[] a)
{
//need to compare 2 elements of a
}
Run Code Online (Sandbox Code Playgroud)
这会强制类型T具有该compareTo(T other)方法.这意味着您可以在方法中执行以下操作:
if (a[i].compareTo(a[j]) > 0) }
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3771 次 |
| 最近记录: |