java 如何给对象中的包装类设置默认值

作者:某橘子 时间:2022-02-09 21:04:08 

给对象中的包装类设置默认值

处理方法如下

主要适用于,对象中使用了包装类,但是不能给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 默认null

  • Boolean默认false

  • int默认0

  • double默认0.0

类中使用自定义类定义属性默认值:null

在定义属性的时候可以指定默认值

来源:https://blog.csdn.net/weixin_42796996/article/details/97499244

标签:java,对象,包装类,默认值
0
投稿

猜你喜欢

  • C# TrackBar拖动条改变滑块颜色

    2021-12-22 22:11:07
  • SpringBoot集成整合JWT与Shiro流程详解

    2022-09-06 06:33:23
  • Unity实战之FlyPin(见缝插针)小游戏的实现

    2022-05-21 19:46:31
  • C++实现LeetCode(159.最多有两个不同字符的最长子串)

    2023-06-20 22:39:46
  • c#基数排序Radix sort的实现方法

    2021-07-25 02:02:21
  • Android SQLite数据库增删改查操作的使用详解

    2023-04-18 09:17:22
  • SQL+C#实现获得当前月的第一天与最后一天

    2022-02-19 13:46:07
  • Android仿qq分组管理的第三方库

    2023-08-27 05:31:21
  • 简单实现安卓里百度地图持续定位

    2023-07-29 07:59:22
  • Java中synchronized关键字修饰方法同步的用法详解

    2022-03-05 07:11:22
  • Android编译出现Warning:Mapping new ns to old ns报错的解决方案

    2022-08-19 02:37:29
  • idea2020.1无法自动加载maven依赖的jar包问题及解决方法

    2021-06-13 17:40:36
  • C# 创建控制台应用程序

    2023-10-09 07:27:37
  • 功能强大的TraceId 搭配 ELK使用详解

    2021-09-16 02:26:43
  • Java流程控制语句最全汇总(中篇)

    2023-11-10 23:52:50
  • C#实现贪吃蛇小游戏

    2022-09-28 17:17:59
  • Android仿微信朋友圈图片查看器

    2023-01-27 18:07:20
  • Java 网络爬虫基础知识入门解析

    2022-05-16 02:39:06
  • Java Hutool 包工具类推荐 ExcelUtil详解

    2023-01-22 23:47:12
  • java的主要特性学习总结

    2021-11-16 05:46:19
  • asp之家 软件编程 m.aspxhome.com