Я пишу программу и застрял в следующем требовании:
Вывод идет в файл фиксированного формата
Total 1 Total 2
---------------- ----------------
311,862.33 23,456.00
40,000.00 789,123.00
Как в приведенном выше примере, длина строки суммыменяется.
Требуется, чтобы сумма всегда начиналась в конце «дефисов».
Как этого добиться?
Я знаю, что правый и левый пады к строкеможно получить через:
String.format("%1$#20s", "311,862.33");
String.format("%1$-15s", "12345");
Но как добиться в моем случае, когда в каждой строке несколько строк, а длины строк являются динамическими?
Ниже приведен код, который форматирует количество водин столбец.Но как добиться того же для нескольких столбцов, то есть для нескольких сумм в одной строке?
String format = "%10.2f\n"; // width == 10 and 2 digits after the dot
float [] floats = {123.45f, 99.0f, 23.2f, 45.0f};
for(int i=0; i<floats.length; i++) {
float value = floats[i];
System.out.format(format, value);
}
Это даст вывод как:
123.45
99.00
23.20
45.00
Спасибо за чтение!