將可選流轉換為值流
你可能需要將 Stream
發射 Optional
轉換為 Stream
的值,僅發出現有 Optional
的值。 (即:沒有 null
值而不處理 Optional.empty()
)。
Optional<String> op1 = Optional.empty();
Optional<String> op2 = Optional.of("Hello World");
List<String> result = Stream.of(op1, op2)
.filter(Optional::isPresent)
.map(Optional::get)
.collect(Collectors.toList());
System.out.println(result); //[Hello World]