java - 如何检查对象中的所有非原始元素是否为空

标签 java

是否有任何快捷方式来检查对象的所有元素(以及它们的元素)是否为空。例如,我想检查一个国家对象(及其城市和街道)是否为空?我不想像这样一一检查;

country == null || country.city == null || country.city.street == null


public class Country{

  City city;
  ....

}

public class City{

  Street street;
  ....
}

public class Street{
  ....
}

最佳答案

没有捷径:您必须递归地浏览您的实例并检查它们的字段。您可以使用 How to list all properties exposed by a Java class and its ancestors in Eclipse? 中所示的自定义浏览器版本.无论如何,如果您正在使用深奥的遗留代码,这种方法是有意义的,而如果您正在编写新类,则最好在工厂方法的构造函数中强制执行所有非空值。

关于java - 如何检查对象中的所有非原始元素是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22246205/

相关文章:

java - Android SQLite,从特定行更新特定字段

java - 可以假设 Java Concurrent Mark Sweep Garbage Collector 在 Linux 和 Mac 以及 Windows 上同样出色吗?

Java 理解 I/O 流

java - 访问 Windows 注册表

java - 用于按浮点参数对对象数组列表进行排序的比较器

java - 在函数中使用泛型的问题

与 dotnet 客户端相比,Java Web 服务客户端速度较慢

java - 多约束 Spring 验证

java - 自定义链表的indexof调用(java)

java - Java 1.4 到 Java 5 之间已知的不兼容性