损失我不计算精度
BigDecimal a = new BigDecimal(7);
BigDecimal b = new BigDecimal(13);
BigDecimal c = new BigDecimal(26);
System.out.print((a.divide(b)).multiply(c));
此代码生成一个例外:
java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
这意味着我需要设置RoundingMode
。
但我需要得到的结果只有没有损失的精度。
我该如何实现它?
好像。你可以看看有分数类的图书馆,或者自己写。 –
看看这个:http://commons.apache.org/proper/commons-math/userguide/fraction.html 这里也有一个讨论:http://stackoverflow.com/questions/474535/best-way- to-represent-a-fraction-in-java – mohammedkhan
@大卫华莱士谢谢 - 你是对的 – gstackoverflow