有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我们应该将null添加到列表集合中。singletonlist还是将整个列表设为空?

在我的示例中,我确实对将null添加到列表有疑问,我将使用Collections.singletonList(value)

假设我有这样的东西:

String value = null;
List<String> test = Collections.singletonList(value);

在本例中,我将得到包含null的单例列表。所以我们有一个列表对象,它包装了一个空值

所以我的问题是关于对value变量添加检查

String value = null;
List<String> test;
if(value == null){
   test = null;
}
else{
   test = Collections.singletonList(value);
}

值得去做吗


共 (2) 个答案

  1. # 1 楼答案

    使用带有单个null的列表来表示没有可返回的值是非常罕见的,这会让人们感到惊讶。当您想要指示没有结果(并且返回集合类型)时,最常见的模式是返回空集合。返回null将不太常见,但仍然不完全令人惊讶

  2. # 2 楼答案

    如果不知道要添加的值是否为null,可以定义如下选项列表:List<Optional<String>> test,使用Optional.ofNullable(value)添加项目,然后从列表中读取时仅检查值是否为null