Java 格式化整数以在指定位置插入字符

Java 格式化整数以在指定位置插入字符,java,string,string-formatting,Java,String,String Formatting,我想以这样的方式格式化一个整数:如果数字的数量大于3,则应在右侧的第4个位置插入一个逗号;如果数字的数量大于6,则应在右侧的第4和第7个位置插入一个逗号,即 123应该变成123 1234应该变成1234 12345应该变成12345 123456应该变成123456 1234567应该变成1234567 我在某某和互联网上发现了类似的问题,但没有一个能帮我解决这个问题 我知道这将导致String.format(format,arguments),但我无法指定第一个参数,即format 非常感谢

我想以这样的方式格式化一个整数:如果数字的数量大于3,则应在右侧的第4个位置插入一个逗号;如果数字的数量大于6,则应在右侧的第4和第7个位置插入一个逗号,即

123应该变成123
1234应该变成1234
12345应该变成12345
123456应该变成123456
1234567应该变成1234567

我在某某和互联网上发现了类似的问题,但没有一个能帮我解决这个问题

我知道这将导致
String.format(format,arguments)
,但我无法指定第一个参数,即
format

非常感谢您的帮助。

您可以使用以下方式格式化整数:-

int num = 1234567;
NumberFormat formatter = new DecimalFormat("#,###");
System.out.println("The value is: " + formatter.format(num));
输出:-

The value is: 1,234,567
您可以使用以下方式设置整数的格式:-

int num = 1234567;
NumberFormat formatter = new DecimalFormat("#,###");
System.out.println("The value is: " + formatter.format(num));
输出:-

The value is: 1,234,567

使用
DecimalFormat
格式化输入字符串

DecimalFormat format = new DecimalFormat("#,###");
        int d = 1234;
        System.out.println(format.format(d));

使用
DecimalFormat
格式化输入字符串

DecimalFormat format = new DecimalFormat("#,###");
        int d = 1234;
        System.out.println(format.format(d));

看看这个,这可能是你的问题使用格式化程序的副本,看看这个,这可能是你的问题使用格式化程序的副本,
NumberFormat Formatter=new DecimalFormat(“###,##,###,####”)是working@GAMA.. 是的,那也行,但真的不需要。使用此格式。
NumberFormat formatter=new DecimalFormat(“#####,###,##”)是working@GAMA.. 是的,那也行,但真的不需要。跟这个一起去。