如何在Java中舍入数字?就像,我有这个数字3.4666666666663
,我想把它四舍五入到最近的浮点数,即3.5。我不想将它四舍五入到
答案 0 :(得分:3)
您有几个选项,可以使用DecimalFormat
,BigDecimal
甚至是String.format()
double v = 3.4666666666663;
NumberFormat nf = new DecimalFormat("#.0");
System.out.println(nf.format(v));
MathContext mc = new MathContext(2);
System.out.println(BigDecimal.valueOf(v).round(mc));
System.out.printf("%.1f%n", v);
输出
3.5
3.5
3.5
答案 1 :(得分:-1)
为什么不将它乘以10,然后再乘以10,然后除以10。