반응형
“객체 배열 정렬”은 사용자가 정의한 클래스의 객체로 이루어진 배열의 요소들을 기준에 따라 오름차순이나 내림차순으로 정렬하는 작업을 말합니다. 정렬 기준은 주로 객체의 특정 속성이나 비교 메서드를 통해 결정됩니다.

◎ 구문 |
// Arrays 클래스의 sort 메서드를 사용한 오름차순 정렬 Arrays.sort(array); // Arrays 클래스의 sort 메서드를 사용한 내림차순 정렬 Arrays.sort(array, Comparator.reverseOrder());
◎ 예제 1: 객체 배열 오름차순 정렬 |
이 예제에서는 “Comparable” 인터페이스를 구현하여 나이를 기준으로 오름차순 정렬한 “Person” 클래스를 정의했습니다. “Arrays.sort()” 메서드를 사용하여 객체 배열을 정렬하고, 결과를 출력했습니다.
import java.util.Arrays; public class Person implements Comparable<Person> { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } // 나이를 기준으로 오름차순 정렬 @Override public int compareTo(Person other) { return Integer.compare(this.age, other.age); } public String toString() { return name + " (" + age + " years old)"; } public static void main(String[] args) { // 객체 배열 선언 및 초기화 Person[] people = { new Person("Alice", 25), new Person("Bob", 30), new Person("Charlie", 22), new Person("David", 28) }; // 오름차순 정렬 Arrays.sort(people); // 결과 출력 System.out.println("나이로 오름차순 정렬 결과:"); for (Person person : people) { System.out.println(person); } } } [출력] 나이로 오름차순 정렬 결과: Charlie (22 years old) Alice (25 years old) David (28 years old) Bob (30 years old)
◎ 예제 2: 객체 배열 내림차순 정렬 |
이 예제에서는 “Comparable” 인터페이스를 구현하여 나이를 기준으로 오름차순 정렬한 “Person” 클래스를 정의했습니다. “Arrays.sort()” 메서드를 사용하여 객체 배열을 내림차순으로 정렬하고, 결과를 출력했습니다.
import java.util.Arrays; import java.util.Comparator; public class Person implements Comparable<Person> { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } // 나이를 기준으로 오름차순 정렬 @Override public int compareTo(Person other) { return Integer.compare(this.age, other.age); } public String toString() { return name + " (" + age + " years old)"; } public static void main(String[] args) { // 객체 배열 선언 및 초기화 Person[] people = { new Person("Alice", 25), new Person("Bob", 30), new Person("Charlie", 22), new Person("David", 28) }; // 내림차순 정렬 Arrays.sort(people, Comparator.reverseOrder()); // 결과 출력 System.out.println("나이로 내림차순 정렬 결과:"); for (Person person : people) { System.out.println(person); } } } [출력] 나이로 내림차순 정렬 결과: Bob (30 years old) David (28 years old) Alice (25 years old) Charlie (22 years old)
반응형
'자바(JAVA)' 카테고리의 다른 글
자바(Java) switch case 구문 사용하기 (0) | 2024.03.25 |
---|---|
자바(Java) if else 구문 사용하기 (0) | 2024.03.20 |
자바(Java) 기본 데이터 타입 (1) | 2024.03.19 |
자바(Java) 문자열을 비교하는 여러가지 방법 (2) | 2024.03.14 |
자바(Java) String 배열 정렬하기 (1) | 2024.02.26 |
자바(Java) replace() 와 replaceAll() 함수의 차이는? (0) | 2024.02.20 |
자바 OpenJDK 설치와 환경 변수 설정하기 (0) | 2024.02.18 |
자바(Java) String 배열 정렬하기 (0) | 2024.02.16 |
녹두장군1님의
글이 좋았다면 응원을 보내주세요!