东莞营销型网站建设找火速,wordpress api地址,平和网站建设,柳州哪里有网站建设#x1f61c;作 者#xff1a;是江迪呀✒️本文关键词#xff1a;日常BUG、BUG、问题分析☀️每日 一言 #xff1a;存在错误说明你在进步#xff01; 一、问题描述
直接上代码#xff1a;
Test
public void test22() throws ParseException {System.out.p… 作 者是江迪呀✒️本文关键词日常BUG、BUG、问题分析☀️每日 一言 存在错误说明你在进步 一、问题描述
直接上代码
Test
public void test22() throws ParseException {System.out.println(new BigDecimal(0).divide(new BigDecimal(54)).setScale(2,BigDecimal.ROUND_HALF_UP));
}报错内容
Non-terminating decimal expansion; no exact representable decimal result.二、问题原因
原来JAVA中如果用BigDecimal做除法的时候一定要在divide方法中传递第二个参数定义精确到小数点后几位否则在不整除的情况下结果是无限循环小数时就会抛出以上异常。
三、问题解决
将代码修改成下面所示即可
Test
public void test22() throws ParseException {System.out.println(new BigDecimal(0).divide(new BigDecimal(54),2,BigDecimal.ROUND_HALF_UP));
}