DecimalFormat基本用法简介说明
下文笔者讲述java中常见的DecimalFormat对象的功能及示例简介说明,如下所示
DecimalFormat对象的功能
DecimalFormat是NumberFormat中的一个子类 DecimalFormat的功能: 用于格式化十进制数字 下文笔者将采用示例的方式,讲述具体的实现方式
1.保留两位小数(截断)
double num = 87.362; DecimalFormat df = new DecimalFormat("#.##"); //指定RoundingMode df.setRoundingMode(RoundingMode.DOWN); String str = df.format(num); double formatNum = Double.parseDouble(str); System.out.println(formatNum);
2.保留两位小数(四舍五入)
double num = 87.362; DecimalFormat df = new DecimalFormat("#.##"); //指定RoundingMode df.setRoundingMode(RoundingMode.HALF_UP); String str = df.format(num); double formatNum = Double.parseDouble(str); System.out.println(formatNum);
3.常用RoundingMode
HALF_EVEN: DecimalFormat默认RoundingMode为RoundingMode.HALF_EVEN 也称为“银行家舍入法” 主要在美国使用 四舍六入,五分向相邻的偶数舍入
HALF_UP:四舍五入 HALF_DOWN:五舍六入 2.5 —>2 2.6 —>3 DOWN:直接截断 UP:始终对非零舍弃部分前面的数字加 1
4.占位符
0表示数字占位符,实际位数不够时补零 比实际数字的位数多,不足的地方用0补上 new DecimalFormat(“00.00”).format(8.24) //结果:08.24 new DecimalFormat(“0.000”).format(8.24) //结果: 8.240 new DecimalFormat(“00.000”).format(8.24) //结果:08.240 整数部分比实际数字的位数少,整数部分不改动 小数部分比实际数字的位数少,根据小数部分占位符数量保留小数 new DecimalFormat(“0.000”).format(18.246) //结果:18.246 new DecimalFormat(“00.00”).format(18.246) //结果:13.15 new DecimalFormat(“0.00”).format(18.246) //结果:13.15 #表示数字占位符,实际位数不够时不补零 比实际数字的位数多,不变 new DecimalFormat("##.##").format(8.24) //结果:8.24 new DecimalFormat("#.###").format(8.24) //结果: 8.24 new DecimalFormat("##.###").format(8.24) //结果:8.24 整数部分比实际数字的位数少,整数部分不改动 小数部分比实际数字的位数少,根据小数部分占位符数量保留小数 new DecimalFormat("#.###").format(18.246) //结果:18.246 new DecimalFormat("##.##").format(18.246) //结果:13.15 new DecimalFormat("#.##").format(18.246) //结果:13.15
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。