Я пытаюсь использовать форматированный вывод и хотел бы знать, как бы я использовать% 10s в этом кодеФорматированного вывод в Java
package formattedoutput;
public class FormattedOutput {
public static void main(String[] args) {
double amount;
amount = 43.676;
int spaces;
spaces = 77;
String adding;
adding = "check me out";
System.out.printf("%1.2f%n", amount);
System.out.println();
System.out.printf("%12d", spaces);
System.out.println();
System.out.printf("%10s", adding);
}
}
Из того, что я не вижу никакой разницы он говорит, что «Буква« s »в конце спецификатора формата может использоваться с любым типом значения. Это означает, что значение должно выводиться в формате по умолчанию, как и в неформатированном виде. Число, например, «10» в% 10 можно добавить, чтобы указать (минимальное) количество символов. «Я использую его правильно? Если да, то почему он говорит, что спецификатор «s» может использоваться с любым типом значения?
Потому что он может лечить любой объект в виде строки, используя метод 'toString'. – ajb
Означает ли это, что я буду использовать только в этом случае? Когда мне нужно преобразовать в String –
Обычный случай - использовать '% s' с фактическим параметром' String'. Вы сделали бы это, когда захотите проложить его пробелами, чтобы он заполнил определенную ширину, чтобы отчет выглядел красиво. Вы также можете использовать это, если у вас есть форматная строка с более чем одним значением для форматирования. Обычно вы не использовали бы просто ''% s'' как строку формата, потому что это бессмысленно. – ajb