Il y a une bonne question sur l'arrondissement des nombres décimaux en Java here. Mais je me demandais comment puis-je inclure les zéros de suivi à afficher les prix dans mon programme comme: 1,50 $, 1,00Comment afficher correctement un prix jusqu'à deux décimales (centimes), y compris les zéros de fin en Java?
$ La solution simple
String.format("%.2g%n", 0.912385);
fonctionne très bien, mais omet le zéro de fuite si elle est à la dernière décimale. La question est dans mon programme, même si je n'utilise que des expressions comme ceci:
double price = 1.50;
Quand je fais des calculs avec des prix différents (ajouter, multiplier, etc.), le résultat est principalement affiché comme ceci:
$2.5000000000000003
Ainsi, en utilisant l'String.format fonctionne très bien à cette fin, mais il tronque l'exemple ci-dessus pour
$2.5
y at-il une bonne façon de montrer le zéro de fuite à la deuxième décimale endroit? Ou les deux zéros si la sortie d'un calcul doit être
$2.00
En règle générale, n'utilisez jamais de nombres à virgule flottante pour représenter une monnaie. Au lieu de cela, pensez à utiliser un nombre entier pour les cents/pence. – Pool