在Java中右對齊,我怎麼可以用printf()來都左對齊,右對齊始終在同一線輸出? 這是一切代碼左對齊:的Java:用printf()同時左對齊,並在同一行
System.out.println(" ********************L********R");
String[] array = {"apple", "pie", "cheese"};
double[] array2 = {0.003, 1245, 19.979};
double[] array3 = {0.2, 1, 9};
for (int index = 0; index < array.length; index++)
{
System.out.printf(" %-10s%-10.2f%.2f%n", array[index], array2[index], array3[index]);
}
這是輸出一切左對齊:
********************L********R
apple 0.00 0.20
pie 1245.00 1.00
cheese 19.98 9.00
我想要什麼,而不是如果第三要素(0.20 ,1.00,9.00)爲右合理。我在上面的輸出中指出「L」是左對齊的,但我希望變量在「R」處右對齊。我怎樣才能在右邊(0.20,1.00,9.00)右邊對齊輸出,同時保持左邊的輸出(蘋果,餡餅,芝士)左邊的正確?
哦,我意識到我的錯誤。我認爲在最後一列中加上%10.2f將會從(0.00,1245.00,12.98)開始計算空格,並且由於它們的長度都不相同,我認爲第三列將被關閉一,二,三。我現在看到,第二列的-10.2f均勻地分配了10個空格,所以第三列將在這10個空格之後開始。感謝大家! – RedstoneFrogger 2014-12-19 04:55:16