【发布时间】:2018-10-05 12:34:35
【问题描述】:
我正在尝试取点 (.) 后面的数字
例如:5.12 我想要的是 0.12
这是我的代码:-
double number= 5.12;
int nInt= (int) number;
double nDouble= number- nInt;
if (nDouble== 0.12) {
System.out.println(nDouble);
} else {
System.err.println(nDouble+ "\nThe answer should be (0.12)!!!");
}
代码应该给我 0.12 但它给了我 0.1200000000000001
如何解决这个问题?
【问题讨论】:
-
如果你想使用对你获得算术计算的精确值很重要的数字,你可以在java中使用
BigDecimal和BigInteger -
使用
BigDecimal