java - 是否有用于 collections.addAll 的 java 8 语法来处理空参数?

标签 java collections java-8

List<Integer> list = Lists.newArrayList(1,2,3);
List<Integer> list2 = null;
//throws nullPointer
list.addAll(list2);

//check here    
if (list2!=null){
    list.addAll(list2);   
}

是否有 Java 8 方法可以简单地在一行中完成。

这是我的一个。但实际上我不需要创建 boolean

boolean added = list2!=null ? list1.addAll(list2) : false;

最佳答案

如果你特别想要 java 8 的方式,你可以这样做

Optional.ofNullable(list2).ifPresent(list::addAll);

但我不认为它胜过三元表达式

关于java - 是否有用于 collections.addAll 的 java 8 语法来处理空参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31551021/

相关文章:

java-8 - Java8 eclipse 编译器错误

java - 流和功能接口(interface): throw exception inside stream and aggregate them

Java录制/混合两个音频流

java - 使用查询字符串搜索对象时,我应该采用什么 Spring 策略?

java - 使用集合对象还是Java传输对象的性能比较(以堆大小而言)

python - 通用对象 "watcher"代理,用于包装集合对象以记录状态更改(添加/删除)

java - 编译器无法识别我的变量

java - Android - 以编程方式禁用短信通知

ruby-on-rails - 如何检索关系/集合的特定属性?

java - 如何将 Optional<Object> 转换为 Optional<String>