在Java中对齐printf输出

我需要显示数组中包含价格的商品列表,并希望调整价格。我几乎可以正常工作,但需要改进。下面是代码和输出。任何想法如何使所有价格一致?到目前为止,有些工作没有完成。提前致谢。

//for loop

System.out.printf("%d. %s \t\t $%.2f\n",

i + 1, BOOK_TYPE[i], COST[i]);

输出:

1. Newspaper         $1.00

2. Paper Back $7.50

3. Hardcover book $10.00

4. Electronic book $2.00

5. Magazine $3.00

回答:

您可以尝试以下示例。请在宽度前使用“-”以确保左缩进。默认情况下,它们将右缩进;这可能不适合您的目的。

System.out.printf("%2d. %-20s $%.2f%n",  i + 1, BOOK_TYPE[i], COST[i]);

格式字符串语法:http

:

//docs.oracle.com/javase/7/docs/api/java/util/Formatter.html#syntax

格式化数字打印输出:https

:

//docs.oracle.com/javase/tutorial/java/data/numberformat.html

PS:这可以作为对DwB答案的评论,但我仍然没有评论的权限,因此无法回答。

以上是 在Java中对齐printf输出 的全部内容, 来源链接: utcz.com/qa/421329.html

回到顶部