collections.addAll 有 java 8 语法来处理 null 参数吗?

问题描述 投票:0回答:2
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 collections java-8
2个回答
5
投票

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

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

但我不认为它比 ternary 表达式有多大优势。


0
投票

尝试 Java 8 中新增的可选类型。它能够处理空指针...

© www.soinside.com 2019 - 2024. All rights reserved.