>Java >java지도 시간 >null 값 처리를 위해 Java에서 선택적 함수를 사용하는 방법

null 값 처리를 위해 Java에서 선택적 함수를 사용하는 방법

王林
王林원래의
2023-06-26 17:03:461592검색

Java는 개발 효율성을 향상시키기 위해 다양한 내장 기능을 제공하는 매우 인기 있는 프로그래밍 언어입니다. 그 중 Optional 함수는 프로그래머가 null 값 문제를 보다 편리하게 처리하는 데 도움이 될 수 있습니다. 이 기사에서는 null 값 처리를 위해 Java에서 Optional 함수를 사용하는 방법을 설명합니다.

옵션 기능이란 무엇인가요?

Java8에서 Optional은 비어 있을 수 있는 컨테이너를 나타내는 클래스입니다. Optional 객체에 null이 아닌 값이 포함되어 있으면 isPresent() 메서드는 true를 반환하고, 그렇지 않으면 false를 반환합니다. Optional 클래스는 Null 값 처리를 더욱 편리하게 하기 위해 다양한 유틸리티 메서드와 기능적 인터페이스를 제공합니다.

옵션 기능은 어떻게 사용하나요?

먼저 Optional 객체를 생성하는 방법을 이해해야 합니다. Optional 객체를 생성하기 위해(), ofNullable(), empty()의 세 가지 정적 메서드 중 하나를 사용할 수 있습니다. 그 중에서 of() 메서드는 null이 아닌 값만 받을 수 있습니다. null 값이 전달되면 ofNullable() 메서드는 null 값을 포함한 모든 유형의 값을 받아들일 수 있습니다. 전달되면 빈 Optional 객체를 반환합니다. empty() 메서드는 빈 Optional 객체를 직접 반환합니다.

Optional<String> name = Optional.of("张三"); //创建一个包含非空值的Optional对象
Optional<String> emptyName = Optional.empty();//创建一个空的Optional对象
Optional<String> anotherName = Optional.ofNullable(null);//创建一个包含null值的Optional对象

get() 메소드를 사용하여 Optional 객체의 값을 가져올 수 있습니다. Optional 객체의 값이 비어 있으면 get() 메서드는 NoSuchElementException을 발생시킵니다. 따라서 get() 메서드를 사용하기 전에 isPresent() 메서드를 사용하여 Optional 개체의 값이 비어 있지 않은지 확인하는 것이 가장 좋습니다.

Optional<String> name = Optional.of("张三"); 
if(name.isPresent()){
    String n = name.get();
    System.out.println(n); //输出"张三"
}

Optional 개체의 값이 비어 있으면 orElse() 메서드를 사용하여 기본값을 설정할 수도 있습니다. Optional 객체의 값이 비어 있으면 orElse() 메서드는 우리가 설정한 기본값을 반환합니다.

Optional<String> name = Optional.empty(); 
String n = name.orElse("未知"); //设置默认值为"未知"
System.out.println(n); //输出"未知"

orElse() 메서드 외에도 orElseGet() 메서드와 orElseThrow() 메서드를 사용할 수도 있습니다. 이러한 메서드는 Optional 개체의 null 값 문제를 처리하는 데에도 사용됩니다.

orElseGet() 메소드는 orElse() 메소드처럼 이미 생성된 기본값을 전달하는 대신 공급자 인터페이스를 수신하여 기본값을 생성합니다.

Optional<String> name = Optional.empty(); 
String n = name.orElseGet(() -> "未知"); //使用Supplier接口生成默认值
System.out.println(n); //输出"未知"

orElseThrow() 메서드는 Optional 객체의 값이 비어 있을 때 발생하는 예외를 처리하는 데 사용됩니다.

Optional<String> name = Optional.empty(); 
String n = name.orElseThrow(() -> new RuntimeException("值为空")); //抛出RuntimeException异常

위 메소드 외에도 Optional 클래스는 map(), flatMap(), filter() 등과 같은 다른 많은 메소드도 제공하는데, 이는 Optional 객체에서 null 값을 처리하는 데 도움이 됩니다. 더 편리하게.

Optional<String> name = Optional.of("张三"); 
Optional<String> capitalizedName = name.map((value) -> value.toUpperCase()); //使用map()方法将值转换为大写
System.out.println(capitalizedName.get()); //输出"张三"

Summary

이 글에서는 Java의 Optional 클래스와 null 값 처리를 위해 Optional 함수를 사용하는 방법을 소개했습니다. 선택적 함수를 사용하면 코드를 더욱 방어적인 프로그래밍으로 만들 수 있으며 null 값으로 인한 불확실성을 피할 수 있습니다. 물론 Optional 클래스를 범용 데이터 유형으로 사용하지 않도록 주의해야 합니다. 그렇지 않으면 코드가 불필요하게 커질 것입니다.

위 내용은 null 값 처리를 위해 Java에서 선택적 함수를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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