Sort를 구현하는 방법은 두가지입니다.
1. Comparable 인터페이스를 상속하여 compareTo() 메소드를 구현한다.
2. Comparator 인터페이스를 구현하는 클래스를 하나 만들어 이용한다.
그리고 이를 쉽게 적용하는 방법에는 Arrays.sort() 메소드를 이용하거나
Collections.sort() 메소드를 이용하는 방법이 있습니다.
Comparable 인터페이스를 상속하여 구현한 list의 경우 -> Collections.sort(list)와 같이 호출.
Comparator를 사용하는 경우 -> Collections.sort(list, comparator)와 같이 호출.
mp3 파일 정렬과 같이 문자 순서대로 정렬하고 싶을 때에는
String 클래스가 기본적으로 compareTo()를 문자 순서대로 비교하므로 이를 활용하면 편합니다.
즉 Comparable 인터페이스를 구현한 다음,
String 클래스를 이용해 다음과 같이 구현하면 간편하게 구현 가능합니다.
class MyClass implements Comparable<MyClass> {
String filename;
public int compareTo(MyClass another) {
return filename.compareTo(another.filename);
}
}