BigDecimal除法运算出现java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result的解决办法 今天在使用两个BigDecimal类型的数字做除法运算时,出现了一个如下的异常信息: 1 java.lang.ArithmeticException: Non-terminating decimal expansion; no exact repre…
做除法没有指定保留小数点后几位,就会抛出此异常. 因为会除不尽 Non-terminating decimal expansion; no exact representable decimal result.…
今天在写一个JAVA程序的时候出现了异常:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.发现报错的语句是: ? 1 foo.divide(bar)); 原来JAVA中如果用BigDecimal做除法的时候一定要在divide方法中传递第二个参数,定义精确到小数点后几位,否则在不整除的情况下,结果是无限循环小数时,就会抛出以上异常.解决方…
一.背景 今天在计算库存消耗百分比(消耗的库存/总库存)的时候遇到了一个错误,java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result. 通过异常的描述,我们知道这是因为,某些场景下对于如1/3会得到一个无穷小数,这个时候需要定义计算结果要保留到小数点后几位,否则就会抛出上面的异常. 二.方法介绍 出现异常时使用的方法,此方法没有精度设置. pub…
Non-terminating decimal expansion; no exact representable decimal result.  翻译为:非终止十进制扩展; 没有确切的可表示的小数结果: 翻译为人话就是说:BigDecimal是为高精度计算而设计的,而你的值是没有精确结果的: 举例: BigDecimal b1=new BigDecimal(1.0); BigDecimal b2=new BigDecimal(3.0); BigDecimal c=b1.divide(b2);…
问题描述 意思是“无法结束的除法表达式:没有精确的除结果”.当时输入的10/3,结果应该是3.3333....333. 下面这种处理方式有问题. BigDecimal num3 = new BigDecimal("10").divide( new BigDecimal("3")); devide的函数定义 BigDecimal.divide(BigDecimal divisor, int scale, RoundingMode roundingMode) ; sca…
异常原因:没有指定数据精度导致数据运算无法正常结算 如执行下面的除法: ).divide(BigDecimal.valueOf()).intValue(); 指定精度后就可以了: ).divide(BigDecimal.valueOf(), , BigDecimal.ROUND_HALF_UP).intValue();…
decimal decTemp = 2.1m; Console.WriteLine(decTemp.ToString("#0.00")); //输出2.10 Console.WriteLine(decTemp.ToString("#.##"));//输出2.1 Console.ReadLine();…
I have I double value like this one 17.125. It should be rounded up to 17.13 If I use the simple method like %.2f it shows me 17.12 I also followed several methods described in other threads here like using NumberFormatter and so on - but without luc…
ylbtech-Java-Class-C:java.util.BigDecimal 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部 1. /* * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * *…