如何在数字中插入逗号?

时间:2018-09-29 08:27:59

标签: java number-formatting

我发现了一本书中使用String.format()的例子:

package stringFormat;

public class Main {
    public static void main(String[] args) {
        String test = String.format("%, d", 1000000000);
        System.out.println(test);
    } 
}

根据该书,输出应为:1,000,000,000。但是,当我运行代码时,我只会得到1 000 000 000而没有逗号。为什么?我怎么用逗号?

output picture

2 个答案:

答案 0 :(得分:3)

重现tensorflow的问题:

tf.nn.embedding_lookup(emb_variable, x)

您可以使用Locale.FRANCE避免这种情况:

Locale.setDefault(Locale.FRANCE);

String test = String.format("%, d", 1000000000);
System.out.println(test); //  1 000 000 000

答案 1 :(得分:1)

您可以在链接中了解有关Java格式的信息: https://docs.oracle.com/javase/tutorial/java/data/numberformat.html

对于您的问题,您可以解决:

public static void main(String[] args) {

   String s = "1000000000";

   System.out.format("%,"+s.length()+"d%n", Long.parseLong(s));

}

希望对您有所帮助!