Je veux arrondir une valeur double à son plus proche de 0,05 en java. par exemple: 54,625 à 54,65comment arrondir une valeur double à 0,05 en java
ou
32,1885 à 32,19 etc.
Je veux arrondir une valeur double à son plus proche de 0,05 en java. par exemple: 54,625 à 54,65comment arrondir une valeur double à 0,05 en java
ou
32,1885 à 32,19 etc.
double foo = 54.625;
foo = (int)(foo * 20.0 + 0.5)/20.0;
C'est rapide et sale - il ne gère pas correctement les nombres négatifs, par exemple. Mais pour des problèmes simples, c'est une solution simple.
ce round arrondit au 0.01 le plus proche et il peut obtenir un arrondi erro dans la division. –
paul la solution ci-dessus fonctionne. mais il donne la sortie 16.490000000000002 au lieu de 16.49. comment puis-je le tronquer ?? – meenakshi
Shilpa, c'est ainsi que fonctionnent les nombres à virgule flottante. Si vous voulez une sortie exacte, utilisez BigDecimal. –
duplication possible de [décimal rond à 10ème près] (http://stackoverflow.com/questions/1887826/round-decimal-to-nearest-10th) –
http://stackoverflow.com/questions/2235814/rounding -a-decimal-to-the-nearest-0-05 –
http://stackoverflow.com/questions/2857497/roundoff-double-values-in-java –