我正在为学校实现Java合并排序算法。
它应该能够采取任何可比较的对象。
我创建了一个静态mergeSort(ArrayList输入)方法,但显然我无法将ArrayList或ArrayList转换为ArrayList,即使它们都实现了可比性。
如何表示可比数据的ArrayList?
答案 0 :(得分:5)
使用泛型。像public static <T extends Comparable<T>> ArrayList<T> mergeSort(ArrayList<T> list) {...
然后您可以使用T
作为类型。与T a = list.get(0);
一样,您可以(a.compareTo(b))
。