%(在System.out.printf中将负数转换为正数

Kam*_*Ali 4 java

这段代码的输出

System.out.printf("%d %(d %+d %05d\n", 3, -3, 3, 3);
Run Code Online (Sandbox Code Playgroud)

3 (3) +3 00003
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么-3在本声明中打印为3?

Edw*_*rzo 9

格式化的帮助说,格式为"("意味着它将在括号括起来的负数.

在簿记中,欠款通常用红色数字或括号中的数字表示,作为代表负数的替代符号.

来自维基百科:负数


Pet*_*rey 9

有人可以解释为什么-3在本声明中打印为3?

它不是,它被打印为 (3)

从Javadoc for Formatter说标志(

结果将括号中的负数括起来

  • 据我所知,在会计中,负数位于两个括号之间. (2认同)