我正在尝试使用以下代码在Java中按降序对数组进行排序:
for(int i = 0; i < arr.length; i++) {
Comparator comparator = Collections.reverseOrder();
Arrays.sort(arr,comparator);
}
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误:
Arrays类型中的方法sort(int [])不适用于参数(int [],Comparator)
如果你看一下数组的javadoc,你会发现sort把comparator第二个参数作为第二个参数的唯一方法是:
sort(T[] a, Comparator<? super T> c)
sort(T[] a, int fromIndex, int toIndex, Comparator<? super T> c)
Run Code Online (Sandbox Code Playgroud)
在你的情况下,int[]不是T[](Integer[]将)所以你不能应用这些方法.
你有(至少)2个选择:
Integer[]并使用上面的方法