>Java >java지도 시간 >패턴 일치를 사용하여 Java 14에서 데이터 유형을 결정하고 변환하는 방법

패턴 일치를 사용하여 Java 14에서 데이터 유형을 결정하고 변환하는 방법

WBOY
WBOY원래의
2023-07-29 14:13:261460검색

패턴 일치를 사용하여 Java 14에서 데이터 유형을 결정하고 변환하는 방법

Java 14에서는 데이터 유형 결정 및 변환 작업을 단순화할 수 있는 인스턴스 오브(예: "패턴 일치")에 대한 패턴 일치가 도입되었습니다. 이 새로운 기능은 코드를 더욱 간결하고 읽기 쉽게 만드는 동시에 개발 효율성을 향상시킬 수 있습니다. 이 문서에서는 패턴 일치를 사용하여 Java 14에서 데이터 유형을 결정 및 변환하는 방법을 소개하고 코드 예제를 제공합니다.

1. 패턴 유형 판단

instanceof에 대한 패턴 매칭을 사용하면 변수 선언과 함께 instanceof 연산자를 직접 사용할 수 있습니다. 이전 작성 방식은 아래와 같이 먼저 유형 판단을 한 후 유형 변환을 수행하는 방식이었습니다.

if(obj instanceof String) {
    String str = (String) obj;
    // do something with str
}

Java 14에서는 패턴 유형 판단을 직접 사용할 수 있으며 코드는 다음과 같습니다.

if(obj instanceof String str) {
    // do something with str
}

이렇게 하면, obj가 문자열 유형인지 확인할 수 있을 뿐만 아니라 obj를 문자열 유형으로 강제하고 if 문에서 직접 str 변수를 사용할 수도 있습니다.

2. 패턴 유형 변환

패턴 매칭은 유형 판단 외에도 객체를 특정 유형으로 쉽게 변환할 수 있는 패턴 유형 변환 기능도 제공합니다. 이전 작성 방법은 아래와 같이 강제 유형 변환을 사용하는 것이었습니다.

if(obj instanceof String) {
    String str = (String) obj;
    // do something with str
}

Java 14에서는 위의 작성 방법을 대체하기 위해 패턴 유형 변환을 사용할 수 있습니다. 코드는 다음과 같습니다.

if(obj instanceof String str) {
    // do something with str
}

이 작성 방법은 다음과 같습니다. 유형 판단을 수행할 뿐만 아니라 obj를 String 유형으로 변환하고 if 문에서 str 변수를 직접 사용할 수 있습니다.

3. 패턴 유형 판단 및 변환의 중첩 사용

패턴 매칭은 패턴 유형 판단 및 패턴 유형 변환의 중첩 사용도 지원하므로 보다 유연하게 여러 판단 및 변환을 수행할 수 있습니다. 다음은 샘플 코드입니다.

if(obj instanceof Shape shape) {
    if(shape instanceof Circle circle) {
        // do something with circle
    } else if(shape instanceof Rectangle rectangle) {
        // do something with rectangle
    } else {
        // do something else
    }
}

위 코드에서 먼저 obj가 Shape 유형인지 확인하고, obj를 Shape 유형의 객체 모양으로 변환한 다음, 모양을 기준으로 다시 판단하고 변환하여인지 여부를 확인합니다. Circle 유형 또는 Rectangle 유형을 사용하며 각각 원 및 직사각형 변수를 사용하여 작동합니다.

요약

instanceof에 대한 패턴 일치는 Java 14에 도입된 중요한 기능으로, 데이터 유형의 판단과 변환을 단순화하고 코드 가독성과 개발 효율성을 향상시킬 수 있습니다. 이 문서에서는 패턴 일치를 사용하여 Java 14에서 데이터 유형을 결정하고 변환하는 방법을 소개하고 해당 코드 예제를 제공합니다. 실제 개발에서는 이 새로운 기능을 최대한 활용하여 코드를 더욱 간결하고 읽기 쉽고 효율적으로 만들 수 있습니다.

위 내용은 패턴 일치를 사용하여 Java 14에서 데이터 유형을 결정하고 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.