java fomat string"%,d"和"%,d"

rim*_*ire 3 java string-formatting

为什么是

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

把它写成[ 1,000,000,000],在数字前面有一个空格?

与"%,d"作为格式说明符相比,"%,d"的含义是什么?

更新:任何人都可以在JLS上引用格式说明符的[ 1,000,000,000]位置.

And*_*eas 6

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

"%,d"意味着要打印的逗号(多个)的整数([1,000,000,000])

"%d"表示您正在打印没有逗号的整数([1000000000])