DecimalFormat基本用法简介说明

书欣 Java经验 发布时间:2022-12-27 18:02:54 阅读数:3345 1
下文笔者讲述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
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202212/16721354055213.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者