Maison >Java >javaDidacticiel >Comment arrondir systématiquement à deux décimales en Java ?

Comment arrondir systématiquement à deux décimales en Java ?

DDD
DDDoriginal
2024-11-29 05:46:13949parcourir

How to Consistently Round Up to Two Decimal Places in Java?

Comment arrondir à deux décimales en Java ?

Cette question a été longuement discutée sur StackOverflow. Cependant, bon nombre des solutions proposées se sont révélées inefficaces. Cet article présente une solution qui arrondit systématiquement les valeurs jusqu'à deux décimales.

L'approche conventionnelle consistant à utiliser Math.round() est insuffisante, car elle tronque le nombre plutôt que de l'arrondir. Pour surmonter ce problème, le code doit être modifié comme suit :

double a = 123.13698;
double roundOff = Math.round(a * 100.0) / 100.0;

System.out.println(roundOff);

Cette solution utilise le transtypage pour convertir le résultat entier de Math.round() en un double. En conséquence, la valeur finale est arrondie à deux décimales supérieures, comme souhaité. Une approche alternative est :

double roundOff = (double) Math.round(a * 100) / 100;

Les deux méthodes produisent le résultat souhaité de 123,14. Il est important de noter que l'entrée et la sortie doivent être doubles pour que l'arrondi fonctionne correctement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn