温馨提示×

java中NumberFormat和DecimalFormat的介绍及使用

小亿
72
2023-12-20 20:30:34
栏目: 编程语言

NumberFormat和DecimalFormat是Java中用于格式化数字的类。

NumberFormat是一个抽象类,它提供了格式化和解析数字的方法。它的常用子类有DecimalFormat和ChoiceFormat。

DecimalFormat是NumberFormat的一个具体子类,它可以用于格式化数字为特定的模式。它可以指定小数位数、千位分隔符、货币符号等。

下面是一个使用DecimalFormat格式化数字的例子:

double number = 12345.6789;
DecimalFormat df = new DecimalFormat("#,##0.00");
String formattedNumber = df.format(number);
System.out.println(formattedNumber);

输出结果为:12,345.68

在上面的例子中,我们使用了一个模式字符串#,##0.00来指定格式化的规则。其中#,##0表示千位分隔符,.00表示保留两位小数。

除了格式化数字,DecimalFormat还可以解析字符串为数字。例如:

String str = "1,234.56";
double parsedNumber = df.parse(str).doubleValue();
System.out.println(parsedNumber);

输出结果为:1234.56

上面的例子中,我们使用df.parse(str)方法将字符串解析为数字。

除了DecimalFormat,NumberFormat还提供了其他方法用于格式化和解析数字,比如getCurrencyInstance()用于格式化为货币形式,getPercentInstance()用于格式化为百分数形式等。

总之,NumberFormat和DecimalFormat是Java中用于格式化数字的类,可以将数字格式化为指定的模式,也可以将字符串解析为数字。

0