System.out.println((double)(20/200)*100);
我本来以为是一个四舍五入的问题,但是当它是一个双重问题时,这个问题仍然存在。
答案 0 :(得分:2)
这个问题基本上是重复的,但是由于您似乎处在正确的轨道上,因此您可以做一些微小的更改来完成这项工作:
System.out.println((20.0d/200)*100);
也就是说,使比率在分子或分母中包含至少一个double
。此后,您将得到一个double
的商,并且乘以整数将不会改变该精度。
答案 1 :(得分:2)
由于20/200
是整数除法,因此它将被截断为0,并且整个表达式将返回0。
您应该更改为浮点除法,并且这样做足以将一个操作数转换为浮点类型(例如:20 / 200.0
)。