package com.levelup.java.number;
import static org.junit.Assert.assertEquals;
import java.text.DecimalFormat;
import org.apache.commons.lang3.StringUtils;
import org.junit.Test;
import com.google.common.base.Strings;
/**
* This java example will demonstrate how to format a number with leading zeros.
*
* @author Justin Musgrove
* @see <a href='http://www.leveluplunch.com/java/examples/format-number-with-leading-zeros/'>Format number with leading zeros</a>
*/
public class FormatNumberLeadingZeros {
@Test
public void format_leading_zeros() {
DecimalFormat df = new DecimalFormat("00000");
assertEquals("00123", df.format(123));
}
@Test
public void format_leading_zeros_string_format() {
String leadingZero = String.format("%05d", 123);
assertEquals("00123", leadingZero);
}
@Test
public void format_leading_zeros_guava() {
int asNumber = 123;
String leadingZero = Strings.padStart(String.valueOf(asNumber), 5, '0');
assertEquals("00123", leadingZero);
}
@Test
public void format_leading_zeros_apache_commons() {
int asNumber = 123;
String leadingZero = StringUtils.leftPad(String.valueOf(asNumber), 5,
"0");
assertEquals("00123", leadingZero);
}
}