我想用下划线作为分隔符格式化大量数字。我希望可以使用String.format
或DecimalFormat
。
示例:
int number = 1234567;
String str1 = String.format("%,d", number);
System.out.println(str1); // out puts 1,234,567
但用下划线更改逗号
String str = String.format("%_d", number);
引起异常
UnknownFormatConversionException:转换='_'
DecimalFormat decimalFormat = new DecimalFormat("#_###");
String str2 = decimalFormat.format(number);
System.out.println(str2); // out puts 1234567_
希望投入1_234_567
答案 0 :(得分:1)
您可以使用DecimalFormat
。有关更多信息,请参见documentation。您必须在格式化程序对象上将分隔符设置为“ _”。例如:
DecimalFormatSymbols symbols = new DecimalFormatSymbols();
symbols.setGroupingSeparator('_');
symbols.setGroupingUsed(true);
DecimalFormat df = new DecimalFormat("#######", symbols);
df.setGroupingSize(3);
String out = df.format(1234567);