有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

排序如何保证Java中只能对“Comparable”元素进行排序?

我已经在Java中实现了一个处理整数列表的排序算法。现在我想扩展它以支持一般类型。具体来说,它应该能够对可比较的元素列表进行排序(例如,通过实现Comparable接口)

在Haskell中,我可以将它们声明为Ord的实例,将sort函数声明为Ord a => [a] -> [a],并让编译器保证只有具有排序的元素可以排序

我的问题是:

How to guarantee that only elements having an ordering (e.g., by implementing the Comparable interface) can be sorted in Java?


共 (1) 个答案

  1. # 1 楼答案

    使用受约束的类型参数定义排序方法:

    public static <T extends Comparable<? super T>> List<T> sort(List<T> xs) { ... }