Как отформатировать число 0..9 для отображения с двумя цифрами (это НЕ дата)

Я хотел бы всегда показывать число до 100 с двумя цифрами (например: 03, 05, 15...)

Как я могу добавить 0, не используя условие, чтобы проверить, не установлено ли оно менее 10?

Мне нужно добавить результат к другому String, поэтому я не могу использовать printf.

Ответ 1

Вы можете использовать:

String.format("%02d", myNumber)

См. также javadocs

Ответ 2

Если вам нужно напечатать номер, вы можете использовать printf

System.out.printf("%02d", num);

Вы можете использовать

String.format("%02d", num);

или

(num < 10 ? "0" : "") + num;

или

(""+(100+num)).substring(1);

Ответ 3

Вы можете использовать это:

NumberFormat formatter = new DecimalFormat("00");  
String s = formatter.format(1); // ----> 01

Ответ 4

Класс String обладает способностями формата:

System.out.println(String.format("%02d", 5));

для полной документации, вот doc

Ответ 5

В ресурсах android это довольно просто

<string name="smth">%1$02d</string>