java fomat字符串“%,d”和“%,d”

时间:2018-11-08 04:41:19

标签: java string-formatting

为什么

public static void main(String arr[]){  
  System.out.println("[" + String.format("%, d",1000000000) + "]");
}

将其写为[ 1,000,000,000],数字前是否有空格?

与作为格式说明符的“%,d”相比,“%,d”又意味着什么?

更新: 任何人都可以引用JLS中提到格式说明符"%, d"的地方。

2 个答案:

答案 0 :(得分:5)

"%, d"表示您要打印1个空格,然后是一个带逗号的整数([ 1,000,000,000]

"%,d"表示您正在用逗号([1,000,000,000])打印一个整数

"%d"表示您正在打印不带逗号的整数([1000000000]

答案 1 :(得分:0)

当您运行以下行时

// extra space in front with number formatted
System.out.println(String.format("%, d",1000000000));  
// number formatted with ,
System.out.println(String.format("%,d",1000000000));
// just number
System.out.println(String.format("%d",1000000000));

OUTPUT:

 1,000,000,000
1,000,000,000
1000000000