【发布时间】:2014-12-14 03:02:46
【问题描述】:
我正在为学校使用 Java 实现合并排序算法。
它应该能够接受任何可比较的对象。
我创建了一个静态的 mergeSort(ArrayList input) 方法,但显然我无法将 ArrayList 或 ArrayList 转换为 ArrayList,即使它们都实现了可比性。
如何表示可比较数据的 ArrayList?
【问题讨论】:
标签: java sorting arraylist merge comparable
我正在为学校使用 Java 实现合并排序算法。
它应该能够接受任何可比较的对象。
我创建了一个静态的 mergeSort(ArrayList input) 方法,但显然我无法将 ArrayList 或 ArrayList 转换为 ArrayList,即使它们都实现了可比性。
如何表示可比较数据的 ArrayList?
【问题讨论】:
标签: java sorting arraylist merge comparable
使用泛型。类似public static <T extends Comparable<T>> ArrayList<T> mergeSort(ArrayList<T> list) {...
然后你可以使用T 作为类型。喜欢T a = list.get(0);,你可以做(a.compareTo(b))。
【讨论】: