在Java中,我试图将一个格式为"###.##"
的字符串解析为float。该字符串应始终有2个小数位。将字符串转换为Java中带有2位小数的十进制数
即使字符串的值为123.00
,float也应该是123.00
而不是123.0
。
这是我到目前为止有:
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);
它打印:
string liters of petrol putting in preferences is 010.00
liters of petrol before putting in editor: 10.0
不要解析格式化字符串又可能? – x4rf41
'setMinimumFractionDigits'听起来更合适。 – Maroun
不解析为浮点数 –