Java代码如何判断对象是否所有属性为空呢?
下文笔者讲述使用java代码检测对象是否所有属性为空的方法分享,如下所示
对象是否所有属性为空的检测方法
使用反射依次遍历对象的信息 然后依次检测对象的属性是否为空例:检测一个对象的所有属性是否为空
import java.util.*;
import java.lang.reflect.Field;
public class ObjectUtil {
/**
* 判断该对象是否所有属性为空
* 返回ture表示所有属性为null,返回false表示不是所有属性都是null
*/
public static boolean isAllFieldNull(Object object) {
boolean flag = true;
Class clazz = object.getClass();
Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) {
//设置属性是可以访问的(私有的也可以)
field.setAccessible(true);
Object value = null;
try {
value = field.get(object);
// 只要有1个属性不为空,那么就不是所有的属性值都为空
if (value != null) {
flag = false;
break;
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return flag;
}
}
根据对象的字段名取出字段值
/**
* 反射根据对象的字段名取出字段值
* @param object 类对象
* @param pEntity 字段名
*/
public static Object getFieldP(Object object, String pEntity){
Class clazz = object.getClass();
try {
Field field =clazz.getDeclaredField(pEntity);
field.setAccessible(true);
return field.get(object);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


