В Java со следующим
printf("%-5s Hello %s %n", "", "There!")
Он печатает
Hello There!
Где существует 5 пустых мест, расположенных слева.
Пока это работает как ожидается, но ...
Я хочу знать, возможно ли: как избежать объявления ""
и изменить %-5s
на то, что printf
может интерпретировать, что представляет собой пустое пространство?
Я имею в виду: например, %-5e
, где e предполагается, что это пустой символ, и поэтому больше нет необходимости явно объявлять ""
.
Что-то похожее на %n
, где не требуется аргумент через printf
. Ясно, что %s
требует аргумента, в данном случае ""
, но мне интересно, может ли мой запрос быть выполнен.
Я прочитал Formatter javado c для этой необходимой функции и, кажется, не существует.
Я уже проводил исследование SO, и некоторые предлагаемые решения используют +
в printf
, но, честно говоря, это снижает читабельность
Поэтому цель (отформатирована для лучшего представления):
From: printf("%-5s Hello %s %n", "", "There!")
To: printf("%-5e Hello %s %n", "There!") // %-5e is the functionality I need or looking for