Is there any EASY way to sort an array in descending order like how they have a sort in ascending order in the Arrays class?
Or do I have to stop being lazy and do this myself :[
Advertisement
Answer
You could use this to sort all kind of Objects
sort(T[] a, Comparator<? super T> c) Arrays.sort(a, Collections.reverseOrder());
Arrays.sort()
cannot be used directly to sort primitive arrays in descending order. If you try to call the Arrays.sort()
method by passing reverse Comparator defined by Collections.reverseOrder()
, it will throw the error
no suitable method found for sort(int[],comparator)
That will work fine with ‘Array of Objects’ such as Integer array but will not work with a primitive array such as int array.
The only way to sort a primitive array in descending order is, first sort the array in ascending order and then reverse the array in place. This is also true for two-dimensional primitive arrays.