선택 사항 클래스는 null이 아닌 포함하거나 포함하지 않을 수 있는 컨테이너를 제공합니다. 값. NullPointerException 이 발생하는 코드의 위치 수를 줄이기 위해 Java 8에 도입되었습니다. 생성했습니다. Java 9에는 세 가지 메소드가 추가되었습니다. ifPresentOrElse() , o r() 및 stream() , 기본값을 처리하는 데 도움이 됩니다.
아래 예에서는 Person 을 사용하여 Optional 클래스에서 스트림을 가져올 수 있습니다. 수업
예
import java.util.Optional; import java.util.stream.Stream; public class OptionalTest { public static void main(String args[]) { getPerson().stream() .map(Person::getName) .map("Jai "::concat) .forEach(System.out::println); getEmptyPerson().stream() .map(Person::getName) .map("Jai "::concat) .forEach(System.out::println); } private static Optional<Person> getEmptyPerson() { return Optional.empty(); } private static Optional<Person> getPerson() { return Optional.of(new Person("Adithya")); } static class Person { private String name; public Person(String name) { this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } } }
출력
Jai Adithya