본문 바로가기
자바 알고리즘/잡기술

사용자 정의 정렬 Comparable

by hoshi03 2024. 2. 20.
class Student implements Comparable<Student>{
    String name;
    int age;

    @Override
    public int compareTo(Student o) {
        if (age == o.age){
            return  o.name.compareTo(name);
        }

        return  age - o.age;
    }
}

 

나이가 같으면 이름을 내림차순으로 정렬

나이가 다르면 나이 순으로 오름차순 정렬하는 코드

클래스에 Comparable<클래스타입> 인터페이스를 구현해서

compareTo 메서드에서 

양수 - 오름차순

음수 - 내림차순으로 정렬된다

 

Arrays.sort(배열이름, new Comparator<타입>() 형태로 compare 메서드를 만드는 방법도 있음 

 

 

'자바 알고리즘 > 잡기술' 카테고리의 다른 글

문자열 관련 메서드, 사용법 정리  (1) 2024.11.27
BufferdWriter int 배열 입력받기  (0) 2024.04.06
백준 2910 : LinkedHashMap  (0) 2024.03.11
백준 1302 (map)  (0) 2024.03.10
백준 15552 (자바 빠른 입출력)  (0) 2024.01.29