[java] Comparator 인터페이스의 사용법은?
Java에서 Comparator 인터페이스는 객체들의 순서를 정의하는 데 사용됩니다. 이를 통해 정렬되지 않은 객체들을 정렬할 수 있고, 객체들 간의 순서를 비교할 때 유연성을 제공합니다.
Comparator 인터페이스 예제
아래는 Comparator 인터페이스를 활용해 객체들을 비교하는 간단한 예제입니다.
import java.util.Comparator;
// 문자열 길이에 따라 정렬하는 Comparator
class StringLengthComparator implements Comparator<String> {
@Override
public int compare(String s1, String s2) {
return s1.length() - s2.length();
}
}
public class Main {
public static void main(String[] args) {
List<String> strings = new ArrayList<>();
strings.add("apple");
strings.add("pear");
strings.add("banana");
strings.sort(new StringLengthComparator());
// 정렬된 결과 출력
for (String str : strings) {
System.out.println(str);
}
}
}
위의 예제에서는 StringLengthComparator
클래스가 Comparator
인터페이스를 구현하여 문자열의 길이에 따라 정렬하도록 정의되었습니다.
Comparator 인터페이스를 사용하면 다양한 비교 방법을 정의하여 객체를 유연하게 정렬할 수 있습니다. 내장된 정렬 방법으로는 제공하지 않는 기능을 사용하고 싶을 때 유용하게 활용할 수 있습니다.