java - 检查List对象是否为空

标签 java list object if-statement

我有一个List域类变量为 null 且 List返回 1 个对象。谁能帮我验证List对于 nullisEmpty似乎不起作用。

代码

public static void main(String[] args) {
    DomainClass1 d = new DomainClass1();
    List<DomainClass1> domain = new ArrayList<>();
    d.setTest1(null);
    d.setTest2(null);
    d.setTest3(null);
    d.setTest4(null);
    domain.add(d);
    System.out.println(domain);
    if (domain.isEmpty()) {
        System.out.println("is empty");
    }
}

最佳答案

null不同。您的列表的大小为 1,这意味着有 1 个对象(即使它的所有属性均为 null)。如果你想检查它的所有属性是否都不为空,那么你可以获取每个属性并检查它是否为空。

您可以使用一个附加方法来确定属性是否为 null 或 not,然后调用它。例如:

public class DomainClass1 {
   String str1, str2;

   public boolean isEmpty() {
      if (this.str1 != null && this.str2 != null) {
         return false;
      } else {
         return true;
      }
   }
}

现在像这样调用它:

for (int i = 0; i < domain.size(); i++) {
   if (domain.get(i).isEmpty()) {
      // all fields null
   } else {
      // not all are null
   }
}

关于java - 检查List对象是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55102394/

相关文章:

java - C#/Java如何存储二维数组,与C++有何不同?

java - 关于Oracle的java在线教程中使用HashMap存储anagram的例子

javascript - 如何动态(通过路径)更新 React 状态属性

python - 列表推导式中表达式的执行顺序

python - 如何在 Python 中向列表添加临时选项并根据用户响应显示元素

java - 将直到运行时才知道的对象转换为其类型

java - 寻找距离玩家最近的物体(障碍物)

java - 如何在 JSP 中使用 JSTL 或标准操作生成选择标签

java - Spring Controller 返回不同的日期格式

python - 如何从 python 中的二维列表中获取所有可能的项目组合?