Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java 9의 Optional 클래스에서 스트림을 얻는 방법은 무엇입니까?


선택 사항 클래스는 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