I need to sort an ArrayList of films best rated to worse (5 best - 1 worst). I am using Collections.sort() but the list comes out the same. what am i doing wrong
films.add(new Film().setRating(1));films.add(new Film().setRating(2.5));films.add(new Film().setRating(3.5));films.add(new Film().setRating(4));films.add(new Film().setRating(5));films.add(new Film().setRating(1));films.add(new Film().setRating(2));films.add(new Film().setRating(3));films.add(new Film().setRating(4));Collections.sort(films, new Comparator<Film>() { @Override public int compare(Film o1, Film o2) { final double film1 = o1.getRating(); final double film2 = o2.getRating(); return film1 > film2? 1 : film1 < film2? -1 : 0; }});