【发布时间】:2013-07-08 00:03:43
【问题描述】:
为什么这些测试的行为不同?
public void testRoundFloat() {
final NumberFormat format = NumberFormat.getNumberInstance();
format.setMaximumFractionDigits(2);
format.setMinimumFractionDigits(2);
format.setRoundingMode(RoundingMode.HALF_UP);
assertEquals("102,345.56", format.format(102345.556f));
}
public void testRoundDouble() {
final NumberFormat format = NumberFormat.getNumberInstance();
format.setMaximumFractionDigits(2);
format.setMinimumFractionDigits(2);
format.setRoundingMode(RoundingMode.HALF_UP);
assertEquals("102,345.56", format.format(102345.556d));
}
第一次四舍五入测试失败,因为格式的结果是 xxx.55,第二次四舍五入测试成功。我正在 Android 4.2.2(17 级)上运行测试
谢谢 马库斯
【问题讨论】:
标签: android rounding number-formatting