import java.util.Collections; import java.util.Comparator;
먼저 위의 라이브러리를 추가하자
Collections – 정렬에 필요한 메소드가 담긴 클래스
Comperator- 비교에 필요한 추상 메소드가 담긴 인터페이스
class AscendingDouble implements Comparator<Double> { @Override public int compare(Double a, Double b) { return b.compareTo(a); //같으면 0, b가 더 크면 양수, b가 더 작으면 음수 반환 } }
다음은 위 AscendingDouble 클래스를 추가하자.
이는 실수 2개를 비교하는 메소드가 담긴 클래스로 Collections클래스를 이용해서 내림차순할 때 객체로 넘겨줘야 된다!!
Comparator인터페이스를 구현한 것으로 정수형을 정렬하고 싶으면 Double을 Integer로 바꿔주면 된다.
Collections.sort(values,new AscendingDouble()); // values 내림차순으로 정렬
위와 같이 두 번째 인수에 객체를 넘겨줘야 내림차순 정렬이 된다! 첫 번째 인수는 ArrayList의 참조변수가 위치한다.
Collections.sort(values); // values 오름차순으로 정렬
두 번째 인수를 생략하면 오름차순이 된다.