格式化数字一般采用 DecimalFormat
DecimalFormat 可以处理各种精确的数值格式化,一般还会搭配 float double 已经精度较高的 BigDecimal 使用;
例如: 我想格式数字 保留四位有效数字,小数位数不够补0即可
DecimalFormat decimalFormat = new DecimalFormat("0.0000");
System.out.println(decimalFormat.format(new BigDecimal("11.123")));
System.out.println(decimalFormat.format(new BigDecimal("0.123")));
一般用此方法,需要搭配 BigDecimal 一起使用,否则可能导致 类似0.123 转出后 变为.123,缺失前缀0
Object num = -0.123;
String format = MessageFormat.format("%.{0}f", 4);
System.out.println(String.format(format, NumberUtil.parseNumber(num.toString())));
先利用 MessageFormat 格式化一个 格式化数字的表达式 ,这里小数位数可以为活值
然后利用 String.format 格式化 数值为 要求的小数位数
小小的数字位数格式化,也搞了半天~~