java
-
Comparable 인터페이스를 구현할 때 비교자(Comparator) 이용하기Dev. Diary/Memo 2023. 9. 27. 16:17
책 Effective Java에서 Comparable 인터페이스에 관한 내용을 다루는 부분을 읽다가, 유용할 것 같은 코드를 알게 되었다. 클래스에서 Comparable 인터페이스를 구현하고, compareTo() 메서드를 만들어서 객체들끼리 비교하도록 만드는 것을 우선순위 큐를 이용하여 알고리즘 문제를 해결할 때 많이 사용했었다. 그런데 클래스가 비교해야 할 필드가 여러 개 있을 경우에, 각각의 필드를 하나하나 다 비교해가며 compareTo() 메서드를 구현해야 했었다. 아래는 BOJ 문제 강의실 2(1379)에서 사용된 클래스이다. 기존의 코드에서 클래스의 멤버들이 너무 자유분방해보여서 약간 수정했다. class Lecture implements Comparable { private int id, ..