Java java지도 시간 Java 8의 선택적 클래스: filter() 메서드를 사용하여 null일 수 있는 값을 필터링하는 방법

Java 8의 선택적 클래스: filter() 메서드를 사용하여 null일 수 있는 값을 필터링하는 방법

Aug 01, 2023 pm 05:27 PM
filter optional

Java 8의 Optional 클래스: filter() 메서드를 사용하여 잠재적으로 null 값을 필터링하는 방법

Java 8에서 Optional 클래스는 잠재적으로 null 값을 더 효과적으로 처리하고 NullPointerException 발생을 방지할 수 있는 매우 유용한 도구입니다. . Optional 클래스는 잠재적인 null 값을 조작하는 많은 메서드를 제공하며 중요한 메서드 중 하나는 filter()입니다.

filter() 메서드의 기능은 Optional 객체의 값이 존재하고 주어진 조건을 충족하는 경우 값이 존재하지 않거나 조건이 충족되지 않으면 Optional 객체 자체가 반환된다는 것입니다. 반환됩니다.

다음 코드 예제에서는 filter() 메서드를 사용하여 잠재적으로 null 값을 필터링하는 방법을 보여줍니다.

import java.util.Optional;

public class OptionalFilterExample {

    public static void main(String[] args) {
        String name = "John Doe";
        Optional<String> nameOptional = Optional.ofNullable(name);

        // 使用filter()方法过滤值为空的Optional对象
        Optional<String> filteredOptional = nameOptional.filter(n -> n.length() > 5);

        if (filteredOptional.isPresent()) {
            System.out.println("Name is longer than 5 characters");
        } else {
            System.out.println("Name is either null or shorter than 5 characters");
        }
    }
}
로그인 후 복사

위 예제에서는 먼저 "John Doe" 값을 사용하여 null이 아닌 Optional 개체 nameOptional을 만듭니다. 그런 다음 filter() 메서드를 사용하여 조건 n -> n.length() > 5을 전달합니다. 이 조건은 문자열의 길이가 5보다 큰지 확인합니다. 조건이 충족되면 filter() 메서드는 동일한 값을 포함하는 Optional 객체를 반환하고, 그렇지 않으면 빈 Optional 객체를 반환합니다.

마지막으로 isPresent() 메서드를 사용하여 필터링된 Optional 개체에 값이 포함되어 있는지 확인하고 그 결과에 따라 해당 정보를 출력합니다.

실제 개발에서는 비어 있을 수 있는 값을 필터링해야 하는 경우가 많습니다. filter() 메소드를 사용하면 이 작업을 간결하게 수행할 수 있습니다. 다음은 목록에서 10보다 큰 정수를 필터링하는 방법을 보여주는 또 다른 예입니다.

import java.util.ArrayList;
import java.util.List;
import java.util.Optional;

public class OptionalFilterListExample {

    public static void main(String[] args) {
        List<Integer> numbers = new ArrayList<>();
        numbers.add(5);
        numbers.add(15);
        numbers.add(8);
        numbers.add(20);

        List<Integer> filteredNumbers = new ArrayList<>();

        for (Integer number : numbers) {
            Optional<Integer> optionalNumber = Optional.ofNullable(number);
            optionalNumber.filter(n -> n > 10).ifPresent(filteredNumbers::add);
        }

        System.out.println(filteredNumbers);
    }
}
로그인 후 복사

위의 예에서는 먼저 일부 숫자가 포함된 정수, 숫자 목록을 만들었습니다. 그런 다음 for-each 루프를 사용하여 목록의 각 요소를 반복하고 이를 Optional 개체로 래핑합니다.

다음으로 filter() 메서드를 사용하여 10보다 큰 숫자를 필터링하고 ifPresent() 메서드를 사용하여 필터링된 숫자를filteredNumbers 목록에 추가합니다.

마지막으로 필터링된 모든 숫자가 포함된filteredNumbers 목록을 출력합니다.

Optional 클래스의 filter() 메서드를 사용하면 가능한 null 값을 보다 간결하게 필터링할 수 있어 번거로운 null 검사와 NullPointerException이 발생할 수 있는 상황을 피할 수 있습니다. 이는 우리의 코드를 더욱 강력하고 읽기 쉽게 만듭니다. 코드 품질과 개발 효율성을 높이기 위해서는 개발 시 Optional 클래스의 다양한 방법을 최대한 활용하는 것이 좋습니다.

위 내용은 Java 8의 선택적 클래스: filter() 메서드를 사용하여 null일 수 있는 값을 필터링하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

MD5 해시 값이란 무엇입니까? MD5 해시 값이란 무엇입니까? Feb 18, 2024 pm 08:50 PM

MD5 값은 무엇입니까? 컴퓨터 과학에서 MD5(MessageDigestAlgorithm5)는 메시지를 다이제스트하거나 암호화하는 데 일반적으로 사용되는 해시 함수입니다. 일반적으로 32비트 16진수로 표시되는 고정 길이 128비트 이진수를 생성합니다. MD5 알고리즘은 1991년 Ronald Rivest에 의해 설계되었습니다. MD5 알고리즘은 암호화 분야에서 더 이상 안전하지 않은 것으로 간주되지만 여전히 데이터 무결성 확인 및 파일 확인에 널리 사용됩니다.

'[Vue 경고]: 필터를 확인하지 못했습니다' 오류 해결 방법 '[Vue 경고]: 필터를 확인하지 못했습니다' 오류 해결 방법 Aug 19, 2023 pm 03:33 PM

"[Vuewarn]:Failedtoresolvefilter" 오류를 해결하는 방법 Vue를 사용하여 개발 프로세스를 진행하는 동안 "[Vuewarn]:Failedtoresolvefilter"라는 오류 메시지가 나타나는 경우가 있습니다. 이 오류 메시지는 일반적으로 템플릿에서 정의되지 않은 필터를 사용할 때 발생합니다. 이 문서에서는 이 오류를 해결하는 방법을 설명하고 해당 코드 예제를 제공합니다. 우리가 Vue에 있을 때

Java에서 일반적으로 사용되는 Optional 메소드는 무엇입니까? Java에서 일반적으로 사용되는 Optional 메소드는 무엇입니까? May 09, 2023 am 11:34 AM

머리말 Java의 Optional은 null이 아닌 값을 포함하거나 비어 있을 수 있는 컨테이너 개체입니다. 주요 목적은 코드를 작성할 때 널 포인터 예외를 방지하는 것입니다. java8에서 Optional의 전체 사용법은 다음과 같습니다. 1. Optional 객체를 생성합니다. of() 메소드를 통해 null이 아닌 값을 포함하는 Optional 객체를 생성할 수 있습니다. 예: OptionalOptional=Optional.of("value") ; ofNullable() 메소드를 통해 생성될 수도 있습니다. null 값을 포함하는 Optional 객체입니다. 예: OptionalOptional=Optiona

Java에서 Optional 함수를 사용하여 null 값 사례를 처리하는 방법 Java에서 Optional 함수를 사용하여 null 값 사례를 처리하는 방법 Oct 20, 2023 am 10:06 AM

Optional 함수를 사용하여 Java에서 Null 값을 처리하는 방법 Java 프로그래밍에서는 Null 값이 처리되는 상황에 자주 직면합니다. 널 포인터 예외는 이러한 상황을 피하기 위해 일반적인 오류입니다. Java8에서는 널 값 상황을 처리하기 위해 Optional 클래스를 도입했습니다. Optional 클래스는 비어 있지 않은 값을 포함하거나 값이 없을 수 있는 컨테이너 클래스입니다. Optional 클래스를 사용하면 null 값 상황을 보다 적절하게 처리하고 null 포인터 예외를 방지할 수 있습니다. 아래에

Springboot에서 필터의 원리와 등록방법은 무엇인가요? Springboot에서 필터의 원리와 등록방법은 무엇인가요? May 11, 2023 pm 08:28 PM

1. 필터 먼저 웹 서버의 필터 위치를 살펴보세요. 필터는 이전 처리가 완료된 후 처리를 위해 다음 필터로 전달되는 체인입니다. 1.1필터 인터페이스 정의 publicinterfaceFilter{//초기화 방법은 전체 수명 주기에서 한 번만 실행됩니다. //init 메소드가 성공적으로 실행될 때까지(예외 발생 등의 실패) 필터링 서비스를 제공할 수 없습니다. //FilterConfig 매개변수는 초기화 매개변수를 얻는 데 사용됩니다. publicvoidinit(FilterConfigfilterConfig)throwsServletException;//

PHP 가치 분석: PHP에서 가치의 개념과 적용에 대한 자세한 설명 PHP 가치 분석: PHP에서 가치의 개념과 적용에 대한 자세한 설명 Mar 21, 2024 pm 09:06 PM

PHP 가치 분석: PHP의 가치 개념과 적용에 대한 자세한 설명 PHP 프로그래밍에서 가치는 매우 기본적이고 중요한 개념입니다. 이 기사에서는 PHP의 값 개념과 실제 프로그래밍에서의 적용에 대해 심층적으로 살펴 보겠습니다. 기본 값 유형, 변수, 배열, 객체 및 상수 등을 자세히 분석하고, 독자가 PHP의 값을 더 잘 이해하고 사용할 수 있도록 구체적인 코드 예제를 제공합니다. 기본 값 유형 PHP에서 가장 일반적인 기본 값 유형에는 정수, 부동 소수점, 문자열, 부울 및 널이 포함됩니다. 이러한 기본

자바에서 필터링하는 방법 자바에서 필터링하는 방법 Apr 18, 2023 pm 11:04 PM

참고 1. Lambda 매개변수가 true 값을 생성하면 필터(부울 결과를 생성할 수 있는 Lambda)가 요소를 생성합니다. 2. false가 생성되면 이 요소는 더 이상 사용되지 않습니다. 목록 컬렉션 생성 예: ListstringCollection=newArrayList();stringCollection.add("ddd2");stringCollection.add("aaa2");stringCollection.add("bbb1");stringC

CSS 흐림 속성에 대한 자세한 설명: 필터 및 배경 필터 CSS 흐림 속성에 대한 자세한 설명: 필터 및 배경 필터 Oct 20, 2023 pm 04:48 PM

CSS 퍼지 속성에 대한 자세한 설명: 필터 및 배경 필터 소개: 웹 페이지를 디자인할 때 페이지의 시각적 매력을 높이기 위해 특수 효과가 필요한 경우가 종종 있습니다. 흐림 효과는 일반적인 특수 효과 중 하나입니다. CSS는 요소 콘텐츠와 배경 콘텐츠를 각각 흐리게 하는 데 사용되는 필터와 배경 필터라는 두 가지 흐림 속성을 제공합니다. 이 문서에서는 이러한 두 가지 속성을 자세히 설명하고 몇 가지 구체적인 코드 예제를 제공합니다. 1. 필터

See all articles