Вы могли бы просто сделать
System.out.printf("i is %02d%n", i);
Подробнее смотрите в документации по Formatter
. Соответствующие части:
- Спецификаторы формата для общего, символьного и числового типов имеют следующий синтаксис:
%[argument_index$][flags][width][.precision]conversion
(В данном конкретном случае у вас есть 0
как флаг, 2
как ширина и d
как преобразование.)
Преобразование
'd'
интеграл Результат форматируется как десятичное целое число
Флаги
'0'
Результат будет дополнен нулями
Этот синтаксис форматирования можно использовать и в некоторых других местах, например, так:
String str = String.format("i is %02d", i);