Jin*_*won 2 java lambda java-stream
我有一个可以为空的列表;
List<T> list; // may or may not null
Run Code Online (Sandbox Code Playgroud)
我想与消费者一起处理每个元素。
到目前为止,我做到了。
ofNullable(list)
.map(List::stream)
.ifPresent(stream -> stream.forEach(e -> {}));
Run Code Online (Sandbox Code Playgroud)
或者
ofNullable(eventDataList).ifPresent(v -> v.forEach(e -> {}));
Run Code Online (Sandbox Code Playgroud)
有没有简单或简洁的方法来做到这一点?
为了避免丑陋的空检查,使用 orElse(Collections.emptyList())
Optional.ofNullable(eventDataList)
.orElse(Collections.emptyList())
.forEach(e -> {});
Run Code Online (Sandbox Code Playgroud)
使用静态导入,它非常简洁:
ofNullable(eventDataList).orElse(emptyList()).forEach(e -> {});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13332 次 |
最近记录: |