java 如何给对象中的包装类设置默认值
更新时间:2022年03月02日 11:03:20 作者:某橘子
这篇文章主要介绍了java 如何给对象中的包装类设置默认值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
给对象中的包装类设置默认值
处理方法如下
主要适用于,对象中使用了包装类,但是不能给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();
}
}
java属性的默认值
String默认nullBoolean默认falseint默认0double默认0.0
类中使用自定义类定义属性默认值:null
在定义属性的时候可以指定默认值
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
InputStreamReader 和FileReader的区别及InputStream和Reader的区别
这篇文章主要介绍了InputStreamReader 和FileReader的区别及InputStream和Reader的区别的相关资料,需要的朋友可以参考下2015-12-12
mybatis中关于type-aliases-package的使用
这篇文章主要介绍了mybatis中关于type-aliases-package的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-08-08
Apache Commons Math3探索之快速傅立叶变换代码示例
这篇文章主要介绍了Apache Commons Math3探索之快速傅立叶变换代码示例,具有一定参考价值,需要的朋友可以了解下。2017-10-10
Spring Cloud Gateway动态路由Apollo实现详解
这篇文章主要为大家介绍了Spring Cloud Gateway动态路由通过Apollo实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-10-10
jdk8 FunctionalInterface注解源码解读
这篇文章主要介绍了jdk8 FunctionalInterface注解源码解读,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-11-11


最新评论