Java中的DecimalFormat函数的用法及示例
发布时间:2023-06-01 07:33:59
DecimalFormat是Java中提供的数字格式化工具,用来格式化数字类型的数据,例如整数、浮点数等,常用于输出、显示等场景。DecimalFormat可以使用特定的格式化字符串来转换数字,将其转换为指定格式的字符串形式,也可以用来解析字符串并将其转换为数字。
DecimalFormat支持以下格式化符号:
符号 | 描述
------------ | -------------
0 | 数字,如果该位数不存在则用0填充
# | 数字,如果该位数不存在则留空
. | 小数点
, | 分组分隔符
E | 科学计数法中的幂符号
以下是DecimalFormat的常用方法:
方法 | 描述
------------ | -------------
applyPattern(String pattern) | 将给定的格式化字符串应用到此DecimalFormat
format(double value) | 根据格式化字符串将double类型的数据格式化为字符串
format(long value) | 根据格式化字符串将long类型的数据格式化为字符串
parse(String str) | 对给定的字符串进行解析并返回相应的Number对象
下面是一些DecimalFormat的用法示例:
### 示例1:格式化浮点数
DecimalFormat df = new DecimalFormat("#,###.00"); //定义格式化模式
double num = 1234567.89;
String str = df.format(num); //格式化double类型的数据
System.out.println(str); //输出1,234,567.89
### 示例2:格式化整数
DecimalFormat df = new DecimalFormat("#,###"); //定义格式化模式
int num = 123456789;
String str = df.format(num); //格式化int类型的数据
System.out.println(str); //输出123,456,789
### 示例3:分组分隔符和小数点
DecimalFormat df = new DecimalFormat("#,##0.00"); //定义格式化模式
double num = 1234567.89;
String str = df.format(num); //格式化double类型的数据
System.out.println(str); //输出1,234,567.89
### 示例4:科学计数法
DecimalFormat df = new DecimalFormat("#,###.##E0"); //定义格式化模式
double num = 123456789;
String str = df.format(num); //格式化double类型的数据
System.out.println(str); //输出1.23E8
### 示例5:解析字符串
DecimalFormat df = new DecimalFormat("#,##0.00"); //定义格式化模式
String str = "1,234,567.89";
try {
Number num = df.parse(str); //解析字符串并返回Number对象
System.out.println(num.doubleValue()); //输出1234567.89
} catch (ParseException e) {
e.printStackTrace();
}
以上是DecimalFormat的一些基本用法,通过掌握这些用法,可以方便地使用DecimalFormat进行数字的格式化和解析。在实际开发中,可以根据具体的需求定义相应的格式化模式,并根据需求使用相应的方法。
