我是靠谱客的博主 耍酷黄豆,最近开发中收集的这篇文章主要介绍字符串转百分数,并求平均数 BigDecimal 、DecimalFormat,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 /**
     * 求参评率 和 解决率 的平均数 ,都是百分号的字符串
     * @return
     */
    public List<RptRobotAnswerStatsNew> dealRptRobotAnswerStatsNew(String startDate, String endDate,
                                                               String area, String formats, String companyId){
        List<RptRobotAnswerStatsNew> list = rptRobotAnswerStatsService.getRptRobotAnswerList(companyId, area, formats, startDate, endDate);
        RptRobotAnswerStatsNew total = new RptRobotAnswerStatsNew();
        total.setRobotName("总计"); //汇总数据
       
        BigDecimal canPanLv = new BigDecimal(0.00);
        BigDecimal solvedLv = new BigDecimal(0.00);
        DecimalFormat df = new DecimalFormat("0.00%");
        int i=0;
        for(RptRobotAnswerStatsNew answerStats : list) {
            i++;
            try {
                RptRobotSatisfactionStatsNew rrssn = robotSatisfactionService.getRobotSatisfactionNew(startDate, endDate, null, answerStats.getRobotId(),companyId);
              
                log.info("rrssnStr-->"+ JSON.toJSONString(rrssn));      
                /**参评率**/
                answerStats.setCanpinglv(rrssn.getCanpinglv());        
                /**已解决率**/
                answerStats.setSolvedLv(rrssn.getSolvedLv());      
                String canPingLvStr=answerStats.getCanpinglv().replace("%","");
                canPingLvStr=canPingLvStr.replace("%","");
                String solvedLvStr=answerStats.getCanpinglv().replace("%","");
                solvedLvStr = solvedLvStr.replace("%","");
                Float cplf = Float.valueOf(canPingLvStr) / 100;
                Float slf = Float.valueOf(solvedLvStr) / 100;


                BigDecimal cpl = new BigDecimal(cplf);
                BigDecimal sl = new BigDecimal(slf);
                canPanLv = canPanLv.add(cpl);
                solvedLv = solvedLv.add(sl);
            } catch (Exception e) {
                e.printStackTrace();
                log.info("dealRptRobotAnswerStatsNew Error",e);
            }
        }
       //求完平均数最后在转换成百分数
        total.setCanpinglv(df.format(canPanLv.divide(new BigDecimal(i),4, BigDecimal.ROUND_HALF_UP)));
        total.setSolvedLv(df.format(solvedLv.divide(new BigDecimal(i),4, BigDecimal.ROUND_HALF_UP)));
        list.add(total);
        return  list;
    }

 

最后

以上就是耍酷黄豆为你收集整理的字符串转百分数,并求平均数 BigDecimal 、DecimalFormat的全部内容,希望文章能够帮你解决字符串转百分数,并求平均数 BigDecimal 、DecimalFormat所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部