我正在尝试格式化一个字符串,使'$'接近价格。
例如:
Oranges 3 $3.00 $9.00
但是我目前有:
Oranges 3 $ 3.00 $ 9.00
这是我的代码:(注意:“price”和“total”是double数据类型)
System.out.printf("%-25s %10s $%10s $%10s", item, quantity, price, total);
我想在每个输出之间都留有空隙,但找不到找到结果的方法
我想要的。有什么办法可以解决这个问题?
最佳答案
尝试
System.out.printf("%-25s %10s %10s %10s", item, quantity, "$" + price, "$" + total);
输出
Oranges 3 $3.0 $9.0
或最重要的是,使用格式化程序方法
String format(double d) {
return String.format("$%.2f", d);
}
...
System.out.printf("%-25s %10s %10s %10s", item, quantity, format(price), format(total));
输出
Oranges 3 $3.00 $9.00