返回顶部
首页 > 资讯 > 后端开发 > JAVA >java保留小数点后面两位(四舍五入)
  • 696
分享到

java保留小数点后面两位(四舍五入)

java开发语言 2023-09-14 09:09:08 696人浏览 泡泡鱼
摘要

java保留小数点后面两位(四舍五入)学习记录 三个方法: 使用String.fORMat("%.2f",num);     //num是要处理的数据 这种方法可以用float,double接收数据类型,我试了一下String接收好像会报错

java保留小数点后面两位(四舍五入)学习记录

三个方法:

使用String.fORMat("%.2f",num);     //num是要处理的数据

这种方法可以用float,double接收数据类型,我试了一下String接收好像会报错,小伙伴也可以试一下。可以四舍五入保留两位小数,但是小数点第二位是0的话会不显示。以下代码用到此方法的语句:value.add(Double.valueOf ( String.format("%.2f", Double.valueOf(list.get(3).replace("\"", ""))*100)));

使用DecimalFormat df = new DecimalFormat ("#.00");

df.format(num);

这种方法可以用float,double接收数据类型,String类型我用的报错。可以四舍五入保留两位小数,小数点第二位是0的话会不显示,整数位有时候会不显示,可以把#号改成0整数位就会显示了。以下代码用到此方法的语句:DecimalFormat df = new DecimalFormat ("#.00");

value.add( df.format(Double.valueOf(list.get(3).replace("\"", ""))*100));

使用

//百分数

NumberFormat nt= NumberFormat.getPercentInstance();

//设置百分数精确度2即保留一位小数

nt.setMinimumFractionDigits(2);

//四舍五入结果为:50.02%       

System.out.println("3===="+nt.format(0.50016));

这种方法用String类型接收。可以四舍五入保留两位小数并且自动加上百分号(%),小数点第二位是0的话可以显示(如果强制转换成float或double就不会显示了,我的代码是转了double类型的噢)。以下代码用到此方法的语句:

NumberFormat nt= NumberFormat.getPercentInstance();

nt.setMinimumFractionDigits(2);

value.add(Double.valueOf ( nt.format(Double.valueOf(list.get(3).replace("\"", ""))).replace("%", "") ));

 @Override    public BaseRangeData distanceRatio(String resourceId) {        Res res=new Res();        ArrayList name=new ArrayList<>();        ArrayList< Double > value=new ArrayList<> ();        ArrayList other=new ArrayList<>();        DecimalFormat df = new DecimalFormat ("#.00");        //百分数        NumberFormat nt= NumberFormat.getPercentInstance();        //设置百分数精确度2即保留一位小数        nt.setMinimumFractionDigits(2);        //四舍五入结果为:50.10%//       System.out.println("3===="+nt.format(0.50016));        res = getResData(resourceId,null);        res.getResult().getValues().forEach(i->{            List list = StrToArray(i.toString());            name.add(list.get(1).replace("\"", "").replace("_", "-"));//            value.add(Double.valueOf ( String.format("%.2f", Double.valueOf(list.get(3).replace("\"", ""))*100)));            value.add(Double.valueOf ( nt.format(Double.valueOf(list.get(3).replace("\"", ""))).replace("%", "") ));//            value.add( df.format(Double.valueOf(list.get(3).replace("\"", ""))*100));        });        BaseRangeData distanceRatio=new BaseRangeData(name,value,null);        return  distanceRatio;    }

来源地址:https://blog.csdn.net/weixin_49045960/article/details/127791711

--结束END--

本文标题: java保留小数点后面两位(四舍五入)

本文链接: https://lsjlt.com/news/407025.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作