> Java > java지도 시간 > 본문

자동 비교 및 ​​정렬을 위해 Java 14의 Records 클래스를 사용하는 방법

WBOY
풀어 주다: 2023-07-30 13:06:20
원래의
1214명이 탐색했습니다.

Java 14의 Records 클래스를 사용하여 자동 비교 및 ​​정렬을 구현하는 방법

Java 14에는 불변 데이터 클래스를 정의하는 간결하고 강력한 방법을 제공하는 Records 클래스라는 새로운 클래스가 도입되었습니다. Records 클래스에는 각 필드에 대해 getter 메소드, equals() 메소드, hashCode() 메소드를 자동으로 생성하는 기능이 있어 비교 및 ​​정렬이 매우 편리합니다. 이 기사에서는 샘플 코드를 통해 Java 14의 Records 클래스를 사용하여 자동 비교 및 ​​정렬을 구현하는 방법을 보여줍니다.

첫 번째 단계는 Records 클래스를 정의하는 것입니다. 학생 클래스를 예로 들어 보겠습니다. 학생에게 이름, 나이, 학년이라는 세 가지 필드가 있다고 가정해 보겠습니다. 다음과 같이 Records 클래스를 정의할 수 있습니다.

public record Student(String name, int age, double score) {}
로그인 후 복사

이 예에서는 Record 키워드를 사용하여 Student라는 Records 클래스를 정의하고 이름, 나이 및 점수라는 세 가지 필드를 지정합니다. Records 클래스의 모든 필드는 해당 getter 메소드를 자동으로 생성합니다.

다음으로 학생 개체를 만들고 비교하고 정렬할 수 있습니다. 다음은 샘플 코드입니다.

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<Student> students = new ArrayList<>();
        students.add(new Student("Alice", 20, 85.0));
        students.add(new Student("Bob", 19, 90.0));
        students.add(new Student("Charlie", 21, 80.0));

        // 自动比较和排序
        Collections.sort(students);

        for (Student student : students) {
            System.out.println(student);
        }
    }
}
로그인 후 복사

이 예에서는 세 개의 Student 개체가 포함된 학생이라는 목록을 만듭니다. 그런 다음 Collections.sort() 메서드를 사용하여 이 목록을 정렬합니다. Student 클래스는 Records 클래스이므로 Comparable 인터페이스를 자동으로 구현하므로 이 인터페이스의 CompareTo() 메서드를 호출하여 비교 및 ​​정렬을 수행합니다.

마지막으로 학생 목록을 반복하여 정렬된 결과를 인쇄할 수 있습니다. Student 클래스는 자동으로 toString() 메소드를 생성하므로 System.out.println()을 직접 사용하여 Student 객체를 인쇄할 수 있습니다.

출력 결과는 다음과 같습니다.

Student[name=Alice, age=20, score=85.0]
Student[name=Bob, age=19, score=90.0]
Student[name=Charlie, age=21, score=80.0]
로그인 후 복사

보시다시피 Student 개체는 성적에 따라 높은 수준에서 낮은 수준으로 정렬되었습니다.

이 예에서는 Java 14의 Records 클래스를 사용하여 자동 비교 및 ​​정렬을 구현하는 방법을 보여줍니다. Records 클래스는 불변 데이터 클래스를 정의하는 간결한 방법을 제공하고 각 필드에 대해 getter 메서드, equals() 메서드 및 hashCode() 메서드를 자동으로 생성합니다. Comparable 인터페이스를 구현하기만 하면 자동 비교 및 ​​정렬을 쉽게 수행할 수 있습니다. 이는 Java 프로그래머에게 보다 효율적이고 편리한 작업 방법을 제공합니다.

위 내용은 자동 비교 및 ​​정렬을 위해 Java 14의 Records 클래스를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿