2016-09-04 4 views
0

мне нужно сделать вывод, отображаемых в столбцах следующие строки:Выравнивание колонок

System.out.printf("Weight of Item 1: %10d%n", ITEM_1); 
System.out.printf("Weight of Item 2: %10d%n", ITEM_2); 
System.out.printf("Weight of Item 3: %10d%n", ITEM_3); 
System.out.printf("Total Weight Kilograms: %10d%n", totalWeightKilograms); 

я могу получить переменные, которые вводятся в строку, чтобы перенести туда, где я хочу. Я не могу получить текстовый формат перед переменными. В принципе, выход я получаю:

Weight of Item 1:   38 
Weight of Item 2:   23 
Weight of Item 3:   12 
Total Weight Pounds:   73 

Что я хочу:

Weight of Item 1:   38 
    Weight of Item 2:   23 
    Weight of Item 3:   12 
Total Weight Pounds:   73 

мне нужен отступ (ширину) строки столько, сколько мне нужно, чтобы это было.

ответ

1

Вы можете поместить ваш item (s) и String (s) в массив (ы), а также указать длину формата с %s до тех пор, как ваши длинных String (22 символов). Нечто подобное,

String[] msg = { "Weight of Item 1", "Weight of Item 2", "Weight of Item 3", 
     "Total Weight Kilograms" }; 
int[] items = { ITEM_1, ITEM_2, ITEM_3, totalWeightKilograms }; 
for (int i = 0; i < msg.length; i++) { 
    System.out.printf("%22s: %10d%n", msg[i], items[i]); 
} 

Какие выходы (по запросу)

 Weight of Item 1:   38 
     Weight of Item 2:   23 
     Weight of Item 3:   12 
Total Weight Kilograms:   73 
+0

Благодаря работал как шарм – BigClassic

 Смежные вопросы

  • Нет связанных вопросов^_^