Java中的浮点

Mel*_*991 0 java floating-point

可能重复:
为什么(360/24)/ 60 = 0 ...在Java中

在Java中遇到浮点数和长期问题

float f = 0.100f;
f = 3/180;
Run Code Online (Sandbox Code Playgroud)

在我尝试用对象及其属性做这样的事情的那一刻,但即使是这个最简单的形式,我的程序返回0.0.

我用Longs尝试了这个,但结果仍然相同.这是漫长的一天,也许这很简单,但我在砖墙上.

Xym*_*ech 7

您的表达式3/180正在执行整数除法,然后将其转换为浮点数f.在整数除法中,3/180将返回0,这就是你所看到的.

您可能想要做的只是为您的数字添加小数点: f = 3.0/180.0;