Как да запълним с нули левия ъгъл на инт
при преобразуване в низа
в Java?
По принцип искам да изчистя цели числа до 9999
с водещи нули (например 1 = 0001
).
Използвайте java.lang.String.format(String,Object...)
по следния начин:
String.format("%05d", yournumber);
за нулева подредба с дължина 5. За шестнадесетичен изход заменете d
с x
, както в "%05x"
.
Пълните опции за форматиране са документирани като част от java.util.Formatter
.
Ако по някаква причина използвате Java преди версия 1.5, можете да опитате с метода Apache Commons Lang
org.apache.commons.lang.StringUtils.leftPad(String str, int size, '0')
Намерих този пример... Ще тествам...
import java.text.DecimalFormat;
class TestingAndQualityAssuranceDepartment
{
public static void main(String [] args)
{
int x=1;
DecimalFormat df = new DecimalFormat("00");
System.out.println(df.format(x));
}
}
Тествах това и:
String.format("%05d",number);
И двете работят, но за моите цели мисля, че String.Format е по-добър и по-кратък.