java对象中属性太多,需要对一些属性的值做计算操作

发布时间 2023-12-04 10:21:49作者: 群狼之龙

问题描述:在java中,如果一个对象属性太多,我们需要对一个对象中的全部属性进行取相反值

解决方法:在类中定义一个函数如下:

我这边对象的属性类型都是BigDecimal类型的

public void setNegateValue() throws IllegalAccessException {
        Field[] declaredFields = this.getClass().getDeclaredFields();
        for (Field field : declaredFields) {
            if (field.get(this) != null && field.get(this) != "") {
                 field.set(this, ((BigDecimal) field.get(this)).negate());
           }
       }
  }