Java数字格式类(NumberFormat类和DecimalFormat类)用法详解
1. NumberFormat类
NumberFormat类是Java中用于格式化数字的抽象基类。它提供了一种将数字格式化为特定语言环境下的字符串表示的方式。下面是NumberFormat类的一些常用方法:
getInstance()
:获取默认语言环境的NumberFormat对象。getNumberInstance()
:获取默认语言环境的通用数字格式对象。getCurrencyInstance()
:获取默认语言环境的货币格式对象。getPercentInstance()
:获取默认语言环境的百分比格式对象。format(double number)
:将给定的数字格式化为字符串。parse(String text)
:将给定的字符串解析为数字。
下面是一个示例,演示如何使用NumberFormat类格式化数字:
import java.text.NumberFormat;
public class NumberFormatExample {
public static void main(String[] args) {
double number = 12345.6789;
// 获取默认语言环境的通用数字格式对象
NumberFormat numberFormat = NumberFormat.getNumberInstance();
// 格式化数字为字符串
String formattedNumber = numberFormat.format(number);
System.out.println(\"Formatted Number: \" + formattedNumber);
// 将字符串解析为数字
try {
double parsedNumber = numberFormat.parse(formattedNumber).doubleValue();
System.out.println(\"Parsed Number: \" + parsedNumber);
} catch (Exception e) {
e.printStackTrace();
}
}
}
输出结果:
Formatted Number: 12,345.679
Parsed Number: 12345.679
2. DecimalFormat类
DecimalFormat类是NumberFormat类的一个具体子类,用于格式化数字为特定模式的字符串。它允许你指定数字的小数位数、分组分隔符、货币符号等。下面是DecimalFormat类的一些常用方法:
DecimalFormat(String pattern)
:使用给定的模式创建DecimalFormat对象。format(double number)
:将给定的数字格式化为字符串。parse(String text)
:将给定的字符串解析为数字。
下面是一个示例,演示如何使用DecimalFormat类格式化数字:
import java.text.DecimalFormat;
public class DecimalFormatExample {
public static void main(String[] args) {
double number = 12345.6789;
// 创建DecimalFormat对象,指定模式
DecimalFormat decimalFormat = new DecimalFormat(\"#,##0.00\");
// 格式化数字为字符串
String formattedNumber = decimalFormat.format(number);
System.out.println(\"Formatted Number: \" + formattedNumber);
// 将字符串解析为数字
try {
double parsedNumber = decimalFormat.parse(formattedNumber).doubleValue();
System.out.println(\"Parsed Number: \" + parsedNumber);
} catch (Exception e) {
e.printStackTrace();
}
}
}
输出结果:
Formatted Number: 12,345.68
Parsed Number: 12345.68
以上是关于Java数字格式类(NumberFormat类和DecimalFormat类)的详细讲解和示例说明。通过使用这些类,你可以方便地格式化数字并进行字符串和数字之间的转换。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java数字格式类(NumberFormat类和DecimalFormat类)用法详解 - Python技术站