String.format()
是 Java 中的一个非常有用的方法,它允许你按照指定的格式字符串来格式化数字。你可以指定数字的格式,例如小数点后的位数、千位分隔符等。以下是一些常见的数字格式示例:
%d
int number = 1234;
String formattedNumber = String.format("%d", number);
System.out.println(formattedNumber); // 输出 "1234"
%f
或 %F
(区分大小写)double number = 1234.5678;
String formattedNumber1 = String.format("%f", number);
String formattedNumber2 = String.format("%F", number);
System.out.println(formattedNumber1); // 输出 "1234.567800"
System.out.println(formattedNumber2); // 输出 "1234.567800"(注意大小写)
%f
或 %F
,后跟 .#
和要显示的小数位数double number = 1234.5678;
String formattedNumber = String.format("%.2f", number);
System.out.println(formattedNumber); // 输出 "1234.57"
%,.0f
、%,#.0f
、%,.0d
或 %,#.0d
int number = 1234567;
String formattedNumber1 = String.format("%,.0f", number);
String formattedNumber2 = String.format("%,#.0f", number);
String formattedNumber3 = String.format("%,.0d", number);
String formattedNumber4 = String.format("%,#.0d", number);
System.out.println(formattedNumber1); // 输出 "1,234,567.00"
System.out.println(formattedNumber2); // 输出 "1,234,567"(小数部分被省略)
System.out.println(formattedNumber3); // 输出 "1,234,567"
System.out.println(formattedNumber4); // 输出 "1,234,567"(小数部分被省略)
注意:%,.0f
和 %,.0d
会自动添加千位分隔符,而 %,#.0f
和 %,#.0d
会在小数部分为0时省略它。
这只是 String.format()
处理数字格式的一些基本示例。你可以根据需要组合这些格式说明符来创建更复杂的格式。更多关于 String.format()
的信息,可以查阅 Java 官方文档。