¿Cómo usar el DecimalFormat de Java para el formato de moneda "inteligente"?
Me gustaría usar DecimalFormat de Java para formatear dobles de la siguiente manera:
#1 - 100 -> $100
#2 - 100.5 -> $100.50
#3 - 100.41 -> $100.41
Lo mejor que puedo encontrar hasta ahora es:
new DecimalFormat("'Pero esto no funciona para el caso # 2, y en su lugar genera "$ 100.5"
Editar
Muchas de estas respuestas solo consideran los casos # 2 y # 3 y no se dan cuenta de que su solución hará que # 1 formatee 100 como "$ 100.00" en lugar de solo "$ 100".
0.##");
Pero esto no funciona para el caso # 2, y en su lugar genera "$ 100.5"
Editar
Muchas de estas respuestas solo consideran los casos # 2 y # 3 y no se dan cuenta de que su solución hará que # 1 formatee 100 como "$ 100.00" en lugar de solo "$ 100".