0

想知道如何放置“$”符号,以便在我执行此操作时它与数字一起移动:

    System.out.printf("$%20.2f", test);

我明白了

$               10.00

我正在尝试将一系列数据格式化为 3 列

我尝试将 $ 放在 C 中的 % 之后,但它不起作用。

4

2 回答 2

2

没有将文本添加到要格式化的变量的快捷方式。
您必须分两步执行此操作,如下所示:

System.out.printf("%20s", String.format("$%.2f", test));
于 2012-07-24T09:18:58.250 回答
0

这可能有点麻烦,但我通常只是为此设置了一个十进制格式化程序:

import java.text.DecimalFormat;
class Test {
    public static void main(String[] args) {
        // One-time setup (could be simpler, I've opted for readability).
        final String fmt20v2a = "$#################.00";
        final String fmt20v2b = "%21s";
        final DecimalFormat df20v2 = new DecimalFormat (fmt20v2a);

        // Usage
        System.out.printf(fmt20v2b + "\n", df20v2.format(74.1));
        System.out.printf(fmt20v2b + "\n", df20v2.format(999999.99));

} }

这使您可以通过一些额外的工作来对齐输出,但设置通常只需完成一次。的输出是:

              $74.10
          $999999.99
于 2012-07-24T09:23:48.887 回答