我发现自己写了一个这样的方法:
boolean isEmpty(MyStruct myStruct) {
return (myStruct.getStringA() == null || myStruct.getStringA().isEmpty())
&& (myStruct.getListB() == null || myStruct.getListB().isEmpty());
}
然后想象这个结构有很多其他属性和其他嵌套列表,你可以想象这个方法变得非常大并且与数据模型紧密耦合。
Apache Commons、Spring 或其他 FOSS 实用程序是否有能力递归地反射遍历对象图并确定它基本上没有任何有用的数据,除了列表、数组、地图等的持有者?这样我就可以写:
boolean isEmpty(MyStruct myStruct) {
return MagicUtility.isObjectEmpty(myStruct);
}