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

当anyValue是双倍时,为什么声纳中的anyValue%1"愚蠢的数学"?

如何解决《当anyValue是双倍时,为什么声纳中的anyValue%1"愚蠢的数学"?》经验,为你挑选了0个好方法。

SonarQube引发了重大违规行为不应该在我的代码中执行傻数学.描述说

某些数学运算只是愚蠢而且不应该执行,因为它们的结果是可预测的.

特别是,anyValue%1是愚蠢的,因为它总是返回0.

在我的情况下,anyValue是一个双倍.而这个工程按预期我.这是实际的代码:

double v = Double.parseDouble(Utils.formatDouble(Double.valueOf(value.getValue()), accuracy.intValue()));
boolean negative = v < 0;
v = Math.abs(v);
long deg = (long) Math.floor(v);

v = (v % 1) * 60;

分析器假设我的变量是一个int(这是他们的错误)?还是我错过了别的什么?

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