Android Studio 0.5.2


你好,

我有一个随机浮点值,我想将其转换为int。

浮点数可以在-9.4182062E-99.593071E-8之间具有随机数。

我只想获取正整数值,所以如果数字为负数,即-5.5115866E-8应该只返回5。为此,我使用了Math.abs。

我尝试了以下方法:

int accel =  (int)Math.abs(randomAccel);


但是,无论accel是什么值,randomAccel总是给我零。

非常感谢您的任何建议,

最佳答案

您的负数-5.485747E-5E-5结尾,表示它是-0.0000548574
因此绝对值为0.0000548574

所以Math.abs(-0.0000548574)0.0000548574

(int)0.00005485740

结果是0

您确定代码是否响应0不管random的值是多少?检查您要转换的号码。

您应该使用值对代码进行单元测试。

08-04 14:43