gpt4 book ai didi

java - 通过正确舍入从 double 转换为 int

转载 作者:行者123 更新时间:2023-11-30 03:43:08 26 4
gpt4 key购买 nike

好吧,我有这样的事情:

int x = 5;  
int y = 3;
int z = Math.round(x/y);

输出最终为 1,尽管它应该是 2,是的,我已经导入了 Math
我尝试过类似的东西:

int z = (int) ((x/y) + 0.5)  

但它不起作用并继续为 1
我还浏览了这个网站大约半个小时,并尝试了我找到的所有解决方案,其中一些有效,但是当我稍微更改 xy 时,它就四舍五入了羽绒。
xy 实际上应该是随机数(这就是我实际程序中的方式),但我对此进行了简化

最佳答案

问题是,当您将值传递给 round() 时,“马已经出了谷仓:整数除法去掉了小数部分,因此 Math.round () 得到一个干净的 1,它很高兴地返回。

在调用之前将 xy 转换为 double 可以让您达到预期的结果:

int z = Math.round(((double)x)/y);  

关于java - 通过正确舍入从 double 转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26373171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com