Je réécris un ancien programme Java 6 écrit pour effectuer des calculs scientifiques en Java 8 et je suis bloqué dans cette situation où j'obtiens des résultats différents pour l'opération d'arrondi.Différents résultats d'arrondi en Java 6 et Java 8
Java 6 arrondit une entrée comme 0.499999999999999999994
à 1
mais Java 8 le rend 0
. Je ne suis pas capable de comprendre le problème ici.
Par exemple:
private void foo() {
System.out.println(Math.round(0.499999999999999999994));
}
Le code ci-dessus se comporte différemment pour les différentes versions de Java.
Ce serait génial si quelqu'un pouvait faire la lumière sur ce problème.
poster votre java 6 et java 8 code – Aaron
@Aaron J'ai inclus le code de base. Merci pour votre commentaire. –