Jak poprawnie wyświetlić cenę do dwóch miejsc po przecinku (centów), w tym zera końcowe w Javie?

Istnieje dobre pytanie dotyczące zaokrąglania miejsc dziesiętnych w Javietutaj. Ale zastanawiałem się, jak mogę dołączyć końcowe zera do wyświetlania cen w moim programie, takich jak: 1,50 $, 1,00 $

Proste rozwiązanie

String.format("%.2g%n", 0.912385);

działa dobrze, ale pomija końcowe zero, jeśli jest na ostatnim miejscu dziesiętnym. Problem pojawia się w moim programie, chociaż używam tylko takich wyrażeń:

double price = 1.50;

Kiedy wykonuję obliczenia z różnymi cenami (dodawanie, mnożenie itp.), Wynik jest przede wszystkim wyświetlany w następujący sposób:

$2.5000000000000003

Tak więc użycie String.format działa dobrze do tego celu, ale obcina powyższy przykład do

$2.5

Czy jest odpowiedni sposób, aby pokazać końcowe zero na drugim miejscu po przecinku? Albo oba zera, jeśli wynik obliczenia powinien być

$2.00

questionAnswers(5)

yourAnswerToTheQuestion