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
(这是他们的错误)?还是我错过了别的什么?