SonarQube solleva la violazione principale Silly math should not be performed nel mio codice. La descrizione dicePerché in Anyar c'è qualche valore% 1 "sciocco matematico" quando anyValue è un doppio?
Alcune operazioni matematiche sono semplicemente sciocche e non devono essere eseguite perché i loro risultati sono prevedibili.
In particolare,
anyValue
% 1 è stupido perché sarà sempre tornare 0.
Nel mio caso, però, anyValue
è un doppio. E questo funziona per me as intended. Ecco il codice vero e proprio:
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;
è l'analizzatore di assumere la mia variabile è un int
(che è la loro bug)? O mi manca qualcos'altro?
* * suona come un insetto dalla loro parte. Solo per motivi di completezza, puoi mostrare il codice esatto in cui ottieni la violazione? – luk2302
@pabrams perché non dovrebbe? – luk2302
Perché non c'è niente di speciale in questo ... dovresti avere una ragione per alzare il limite o meno. Ma qualunque cosa ... Immagino di non essere molto produttivo facendo questa domanda. – pabrams