Convertit une chaîne en nombre décimal avec 2 décimales en Java

En Java, je suis en train d'analyser une chaîne de format "###.##" à un flotteur. La chaîne doit toujours avoir 2 décimales.

Même si la Chaîne a de la valeur 123.00, le flotteur doit également être 123.00, pas 123.0.

C'est ce que j'ai à ce jour:

System.out.println("string liters of petrol putting in preferences is " + stringLitersOfPetrol);

Float litersOfPetrol = Float.parseFloat(stringLitersOfPetrol);

DecimalFormat df = new DecimalFormat("0.00");
df.setMaximumFractionDigits(2);

litersOfPetrol = Float.parseFloat(df.format(litersOfPetrol));

System.out.println("liters of petrol before putting in editor: " + litersOfPetrol);

Il imprime:

string liters of petrol putting in preferences is 010.00 
liters of petrol before putting in editor: 10.0
ne pas analyser la chaîne formatée encore, peut-être?
setMinimumFractionDigits semble le plus approprié.
ne pas analyser à un flotteur
Qui ne peut pas être fait à l'aide de float et double. BigDecimal peut le faire.
si il n'est pas possible de le faire à l'aide de float ou double, est-il un autre moyen pour retenir 2 décimales avec laquelle la future chaîne est à venir?

OriginalL'auteur adityag | 2013-07-04