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

时间:2012-10-07 06:54:43

标签: java

此代码的输出

System.out.printf("%d %(d %+d %05d\n", 3, -3, 3, 3);

3 (3) +3 00003

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

2 个答案:

答案 0 :(得分:9)

Formatter帮助说格式“(”表示它会在括号中包含负数。

  

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

来自Wikipedia: Negative Numbers

答案 1 :(得分:9)

  

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

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

来自Formatter的Javadoc说标志(

  

结果将括号括在括号中