当前位置:  开发笔记 > 编程语言 > 正文

双值返回0

如何解决《双值返回0》经验,为你挑选了2个好方法。

这是一个例子:

Double d = (1/3);
System.out.println(d);

这将返回0,而不是0.33333 ......应该如此.

有人知道吗?



1> Firas Assaad..:

那是因为1并且当你没有另外指定时3被视为integers,所以1/3评估integer 0然后将其转换为double 0.要修复它,请尝试(1.0/3)或者1D/3明确说明您正在处理双值.



2> coobird..:

如果你int想使用浮点除法进行划分,你必须将其int转换为double:

double d = (double)intValue1 / (double)intValue2

(实际上,我认为只有铸造intValue2应该足以自动intValue1铸造double.)

推荐阅读
TXCWB_523
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有