15 сентября 2016 г.

Выравнивание строки на примере числа

Актуальная версия статьи доступна на моём новом сайте devmark.ru. 

Если у вас есть некое число, например, номер документа docId, количество цифр в котором вам заранее неизвестно. Но вам необходимо, чтобы число всегда составляло 5 знаков, то есть добавить необходимое количество нулей слева. Для этих целей идеально подходит стандартная библиотека от apache:

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.4</version>
</dependency>


Нам нужен статический метод StringUtils.leftPad(). Пример кода:

int docId = 23;
System.out.println(StringUtils.leftPad(Integer.toString(docId), 5, '0'));

Например, для числа 23 получим результат "00023".

Другой метод rightPad() добавит символы соответственно справа от исходной строки.