NumberFormat类是Java中用于格式化数字的类。它提供了一些静态方法和实例方法来格式化和解析数字。
使用静态方法获取NumberFormat实例:
getInstance():返回当前默认语言环境的通用数值格式器。getCurrencyInstance():返回当前默认语言环境的通用货币格式器。getPercentInstance():返回当前默认语言环境的通用百分比格式器。实例方法:
setMaximumIntegerDigits(int newValue):设置最大整数位数。setMinimumIntegerDigits(int newValue):设置最小整数位数。setMaximumFractionDigits(int newValue):设置最大小数位数。setMinimumFractionDigits(int newValue):设置最小小数位数。setGroupingUsed(boolean newValue):设置是否启用分组(千位分隔符)。format(double/long/Number number):将数字格式化为字符串。parse(String source):将字符串解析为数字。示例代码:
import java.text.NumberFormat;public class NumberFormatExample { public static void main(String[] args) { double number = 12345.6789; // 获取通用数值格式器 NumberFormat numberFormat = NumberFormat.getInstance(); String formattedNumber = numberFormat.format(number); System.out.println("通用格式化:" + formattedNumber); // 获取货币格式器 NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(); String formattedCurrency = currencyFormat.format(number); System.out.println("货币格式化:" + formattedCurrency); // 获取百分比格式器 NumberFormat percentFormat = NumberFormat.getPercentInstance(); String formattedPercent = percentFormat.format(number); System.out.println("百分比格式化:" + formattedPercent); // 解析字符串为数字 String source = "12,345.6789"; try { double parsedNumber = numberFormat.parse(source).doubleValue(); System.out.println("解析结果:" + parsedNumber); } catch (Exception e) { e.printStackTrace(); } }}输出结果:
通用格式化:12,345.679货币格式化:¥12,345.68百分比格式化:1,234,568%解析结果:12345.679通过NumberFormat类,可以方便地对数字进行格式化和解析,以满足不同的显示需求。

