Tùy chọn lớp cung cấp một vùng chứa có thể chứa hoặc không chứa không null giá trị. Nó đã được giới thiệu trong Java 8 để giảm số lượng vị trí trong mã nơi NullPointerException đã tạo. Java 9 đã thêm ba phương thức: ifPresentOrElse () , o r () và stream () , giúp chúng tôi xử lý các giá trị mặc định.
Trong ví dụ dưới đây, chúng ta có thể lấy luồng từ lớp Tùy chọn bằng cách sử dụng Người lớp học
Ví dụ
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; } } }
Đầu ra
Jai Adithya