map合并,找出其中两个数相加减,四舍五入后存入map

如下方法,贴的我写的代码,只是简单的做一个记录

public Map<String, Object> getDealSummaryByTime(Tenant tenant,ReportQuery param){
        Map<String, Object> newMap = new HashMap<>();
// 查询一个结果,存到map中
        Map<String, Object> map1 = baseMapper.getActualAmountAndCount(tenant,param);
// 查询第二个结果,存到map中
        Map<String, Object> map2 = baseMapper.getRefundAmountAndCount(tenant,param);
// 通过一个新的map来存储这两个之和
        newMap.putAll(map1);
        newMap.putAll(map2);
        // 合并后打印出所有内容
//        for (Map.Entry<String, Object> entry : newMap.entrySet()) {
//            System.out.println(entry.getKey() + ":" + entry.getValue());
//        }
//        System.out.println(newMap.get("actualAmount"));
//        System.out.println(newMap.get("actualRefundAmount"));
// 保留两位有效数字,小数点最后面为0的不显示
        DecimalFormat df = new DecimalFormat("#.##");
        double dealAmount = Double.valueOf(newMap.get("actualAmount").toString()) - Double.valueOf(newMap.get("actualRefundAmount").toString());
        newMap.put("dealAmount",df.format(dealAmount));// 交易净额
        return newMap;
    }

  

posted @ 2023-02-12 22:15  张亮java  阅读(66)  评论(0编辑  收藏  举报