reverse
simply reverses the positioning - looks like you want to sort by its natural ordering in reverse so use Collections.sort
with the convenience method of Collections.reverseOrder
to produce the reverse comparator:
List<Integer> mylist = new ArrayList<Integer>();
mylist.add(33);
mylist.add(304);
mylist.add(25);
mylist.add(67);
System.out.println("Before : "+mylist);
Collections.reverse(mylist);
System.out.println("Positional reverse : "+mylist);
// start with original ordering
mylist.clear();
mylist.add(33);
mylist.add(304);
mylist.add(25);
mylist.add(67);
Collections.sort(mylist, Collections.reverseOrder());
System.out.println("Natural ordering reverse: "+mylist);
Produces:
Before : [33, 304, 25, 67]
Positional reverse : [67, 25, 304, 33]
Natural ordering reverse: [304, 67, 33, 25]