参考链接: Java中的对象类Object
处理方法如下
主要适用于,对象中使用了包装类,但是不能给null需要有默认值的情况
/**
* 处理对象中包装类,因为快捷签没有用包装类
*
* @param object 对象
*/
public static void handleParamDefault(Object object) {
Class<?> aClass = object.getClass();
Field[] declaredFields = aClass.getDeclaredFields();
for (Field field : declaredFields) {
//遍历所有字段
if (field.getType().equals(Integer.class)) {
// 处理Integer
setValue(object, field, 0);
}
if (field.getType().equals(Boolean.class)) {
// 处理Boolean
setValue(object, field, Boolean.TRUE);
}
}
}
/**
* 设置默认值
*
* @param object 待处理对象
* @param field 字段
* @param t 包装类值
* @param <T> 包装类
*/
public static <T> void setValue(Object object, Field field, T t) {
boolean accessible = field.isAccessible();
field.setAccessible(true);
try {
if (field.get(object) == null) {
field.set(object, t);
}
field.setAccessible(accessible);
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}