美文网首页
注意:对象属性为引用类型

注意:对象属性为引用类型

作者: IBM_LELE | 来源:发表于2019-03-11 20:34 被阅读0次
      ctOrders.setCanUseTotal(ArithBigUtil.sub(ctOrders.getCanUseTotal(), coinNum));
      log.info("setCanUseTotal:"+ArithBigUtil.sub(ctOrders.getCanUseTotal(), coinNum));
      ctOrders.setCanuseTotalver(bchange.core.encrypt.EbChangeEncode.encryptKeyMD5
                        (Utils.bigDecimalFormat(ArithBigUtil.sub(ctOrders.getCanUseTotal(), coinNum))));
    

    以上写法是错误的。 ctOrders.setCanUseTotal 被set后,下面 GET后,值就变成新值了。又做了一次减法。
    正确的写法

     BigDecimal iCanUseTotal=ArithBigUtil.sub(ctOrders.getCanUseTotal(), coinNum);
      ctOrders.setCanUseTotal(iCanUseTotal);
      log.info("setCanUseTotal:"+iCanUseTotal);
      ctOrders.setCanuseTotalver(bchange.core.encrypt.EbChangeEncode.encryptKeyMD5
                        (Utils.bigDecimalFormat(iCanUseTotal)));
    

    相关文章

      网友评论

          本文标题:注意:对象属性为引用类型

          本文链接:https://www.haomeiwen.com/subject/btjipqtx.html