From 2f5c408bcdcf0cec9ce2baffc5d690e1ae819ed9 Mon Sep 17 00:00:00 2001 From: whycxzp <perryhsu@163.com> Date: 星期三, 26 十月 2022 15:42:38 +0800 Subject: [PATCH] 小数点处理 --- src/main/java/com/whyc/service/BattGroupDataService.java | 30 ++++++++++++++++++------------ 1 files changed, 18 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/whyc/service/BattGroupDataService.java b/src/main/java/com/whyc/service/BattGroupDataService.java index 3128979..e9f8e3c 100644 --- a/src/main/java/com/whyc/service/BattGroupDataService.java +++ b/src/main/java/com/whyc/service/BattGroupDataService.java @@ -10,6 +10,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; +import java.text.NumberFormat; import java.util.HashMap; import java.util.LinkedList; import java.util.List; @@ -98,14 +99,16 @@ List<Float> crList = monList.stream().map(BattgroupData::getCr).map(Float::parseFloat).collect(Collectors.toList()); List<Float> bsList = monList.stream().map(BattgroupData::getBs).map(Float::parseFloat).collect(Collectors.toList()); + NumberFormat percentInstance = NumberFormat.getPercentInstance(); + percentInstance.setMinimumFractionDigits(2); float stdDevBv = MathUtil.getStandardDeviation(bvList); float stdDevBr = MathUtil.getStandardDeviation(brList); float stdDevCr = MathUtil.getStandardDeviation(crList); float stdDevBs = MathUtil.getStandardDeviation(bsList); - map.put("stdDevBv",stdDevBv*10000/100+"%"); - map.put("stdDevBr",stdDevBr*10000/100+"%"); - map.put("stdDevCr",stdDevCr*10000/100+"%"); - map.put("stdDevBs",stdDevBs*10000/100+"%"); + map.put("stdDevBv",percentInstance.format(stdDevBv)); + map.put("stdDevBr",percentInstance.format(stdDevBr)); + map.put("stdDevCr",percentInstance.format(stdDevCr)); + map.put("stdDevBs",percentInstance.format(stdDevBs)); return map; } @@ -129,11 +132,14 @@ float sdBr = MathUtil.getStandardDeviation(dataList.stream().map(BattgroupData::getBr).map(Float::parseFloat).collect(Collectors.toList())); float sdBv = MathUtil.getStandardDeviation(dataList.stream().map(BattgroupData::getBv).map(Float::parseFloat).collect(Collectors.toList())); - resBalanceRate.add(sdBaseBr*10000/100+"%"); - resBalanceRate.add(sdBr*10000/100+"%"); + NumberFormat percentInstance = NumberFormat.getPercentInstance(); + percentInstance.setMinimumFractionDigits(2); - volBalanceRate.add(sdBaseBv*10000/100+"%"); - volBalanceRate.add(sdBv*10000/100+"%"); + resBalanceRate.add(percentInstance.format(sdBaseBr)); + resBalanceRate.add(percentInstance.format(sdBr)); + + volBalanceRate.add(percentInstance.format(sdBaseBv)); + volBalanceRate.add(percentInstance.format(sdBv)); for (int i = 0; i < dataList.size(); i++) { BattgroupData data = dataList.get(i); @@ -154,7 +160,7 @@ } }else { float brFloat = BigDecimal.valueOf(br).subtract(BigDecimal.valueOf(baseBr)).divide(BigDecimal.valueOf(baseBr), 4, BigDecimal.ROUND_HALF_UP).floatValue(); - resChangeRate.add(brFloat * 10000/100 + "%"); + resChangeRate.add(percentInstance.format(brFloat)); } Float bv = Float.parseFloat(data.getBv()); @@ -167,16 +173,16 @@ } }else { float bvFloat = BigDecimal.valueOf(bv).subtract(BigDecimal.valueOf(baseBv)).divide(BigDecimal.valueOf(baseBv), 4, BigDecimal.ROUND_HALF_UP).floatValue(); - volChangeRate.add(bvFloat * 10000/100 + "%"); + volChangeRate.add(percentInstance.format(bvFloat)); } } } //灏嗗潎涓�鎬у��,涔熻繘琛屽彉鍖栫巼璁$畻 float brFloat = BigDecimal.valueOf(sdBr).subtract(BigDecimal.valueOf(sdBaseBr)).divide(BigDecimal.valueOf(sdBaseBr),4, BigDecimal.ROUND_HALF_UP).floatValue(); - resChangeRate.add(brFloat*10000/100+"%"); + resChangeRate.add(percentInstance.format(brFloat)); float bvFloat = BigDecimal.valueOf(sdBv).subtract(BigDecimal.valueOf(sdBaseBv)).divide(BigDecimal.valueOf(sdBaseBv),4, BigDecimal.ROUND_HALF_UP).floatValue(); - volChangeRate.add(bvFloat*10000/100+"%"); + volChangeRate.add(percentInstance.format(bvFloat)); map.put("resChangeRate",resChangeRate); map.put("volChangeRate",volChangeRate); -- Gitblit v1.9.1