可能的重复:
按降序对基本类型数组进行排序 https://stackoverflow.com/questions/215271/sort-arrays-of-primitive-types-in-descending-order
Java:如何以相反的顺序对浮点数数组进行排序? https://stackoverflow.com/questions/1354326/java-how-to-sort-an-array-of-floats-in-reverse-order
如何在 Java 中反转 int 数组? https://stackoverflow.com/questions/2137755/how-do-i-reverse-an-int-array-in-java
以下代码将对数组进行排序上升 order :
int a[] = {30,7,9,20};
Arrays.sort(a);
System.out.println(Arrays.toString(a));
我需要将其排序下降命令。如何使用比较器来做到这一点?
请帮忙。
对于原始数组类型,您必须编写反向排序算法:
或者,您可以将您的int[]
to Integer[]
并编写一个比较器:
public class IntegerComparator implements Comparator<Integer> {
@Override
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
}
or use Collections.reverseOrder()
因为它仅适用于非原始数组类型。
最后,
Integer[] a2 = convertPrimitiveArrayToBoxableTypeArray(a1);
Arrays.sort(a2, new IntegerComparator()); // OR
// Arrays.sort(a2, Collections.reverseOrder());
//Unbox the array to primitive type
a1 = convertBoxableTypeArrayToPrimitiveTypeArray(a2);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)