-1
我有一個二維數組,並且我試圖根據第二列對數組進行排序。我想發表COSTI Ciudatu here的答案,但我得到以下錯誤:基於第二列對Java中的二維數組進行排序
The method sort(T[], Comparator) in the type Arrays is not applicable for the arguments (double[][], ArrayComparator)
我該如何解決呢?
到目前爲止我的代碼是:
import java.util.Comparator;
class ArrayComparator implements Comparator<Comparable[]> {
private final int columnToSort;
private final boolean ascending;
public ArrayComparator(int columnToSort, boolean ascending) {
this.columnToSort = columnToSort;
this.ascending = ascending;
}
public int compare(Comparable[] c1, Comparable[] c2) {
int cmp = c1[columnToSort].compareTo(c2[columnToSort]);
return ascending ? cmp : -cmp;
}
}
和
import java.util.Arrays;
import java.util.Comparator;
public class Convex {
public static void mysort(double points[][], int n){
Arrays.sort(points, new ArrayComparator(1, true));
}
}
請問您可以發佈您的代碼嗎?我懷疑ArrayComparator沒有實現比較器接口。 –
1.最好展示你的相關代碼,最好是[mcve],否則我們將如何知道你做錯了什麼?我們將如何幫助您解決問題? 2.考慮使用單維數組或自定義類的對象列表,而不是使用二維數組。 –
我剛加了代碼 – danielpanatha