如何从Java 9中的Optional类获取流?
可选 类提供了可以或可以不包含一个容器非空值。它已在Java8中引入,以减少代码中已生成NullPointerException 的位数。Java的9增加了三个方法:ifPresentOrElse(), Ô[R(),和流(),这有助于我们处理的默认值。
在下面的示例中,我们可以使用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