我很好奇为什么转换为字符串会丢失小数,但是当我直接传递对象时,它保持其值。
//set number of decimals at 1
//This code produces whole numbers even though I set number to 1 decimal point.
NumberFormat number = NumberFormat.getNumberInstance();
number.setMaximumFractionDigits(1);
String averageScoreString = number.format(averageScore);
String message = "Average score is: " + averageScoreString
//This code appears to produce the correct number format.
NumberFormat number = NumberFormat.getNumberInstance();
number.setMaximumFractionDigits(1);
String message = "Average score is: " + number.format(averageScore);
使用setMinimumFractionDigits(int)
(控制显示的最小位数)和 setMaximumFractionDigits(int)
(控制显示的最大位数)-
int averageScore = 10;
NumberFormat number = NumberFormat.getNumberInstance();
number.setMinimumFractionDigits(1);
number.setMaximumFractionDigits(1);
String message = "Average score is: " + number.format((double) averageScore);
System.out.println(message);
输出为
10.0
这会产生相同的输出
NumberFormat number = NumberFormat.getNumberInstance();
number.setMinimumFractionDigits(1);
number.setMaximumFractionDigits(1);
String averageScoreString = number.format(averageScore);
String message = "Average score is: " + averageScoreString;
System.out.println(message);
由于,您希望它不丢失小数。而且,我假设您总是想要小数点后一位。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句