java 如何保留两位小数
保留两位小数的常见方法
在Java中保留两位小数可以通过多种方式实现,以下是几种常用的方法:
使用DecimalFormat类
import java.text.DecimalFormat;
double number = 123.456789;
DecimalFormat df = new DecimalFormat("#.00");
String formattedNumber = df.format(number);
System.out.println(formattedNumber); // 输出123.46
使用String.format()方法

double number = 123.456789;
String formattedNumber = String.format("%.2f", number);
System.out.println(formattedNumber); // 输出123.46
使用BigDecimal类
import java.math.BigDecimal;
import java.math.RoundingMode;
double number = 123.456789;
BigDecimal bd = new BigDecimal(number).setScale(2, RoundingMode.HALF_UP);
double result = bd.doubleValue();
System.out.println(result); // 输出123.46
使用NumberFormat类

import java.text.NumberFormat;
double number = 123.456789;
NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(2);
String formattedNumber = nf.format(number);
System.out.println(formattedNumber); // 输出123.46
注意事项
DecimalFormat和String.format()方法返回的是字符串类型,如果需要继续数值计算,需要转换回数值类型。
BigDecimal提供了更精确的数值控制,适合金融等需要高精度计算的场景。
RoundingMode.HALF_UP表示四舍五入模式,可以根据需求选择其他舍入模式。




