Kā aizpildīt veselu skaitli ar nullēm kreisajā pusē?

Kā javā konvertējot int ar nulli, pārveidojot to par stringu?

Es būtībā meklēju, lai veselos skaitļus līdz 9999 aizpildītu ar sākuma nullēm (piemēram, 1 = 0001).

Risinājums

Izmantojiet java.lang.String.format(String,Object...) šādi:

String.format("%05d", yournumber);

nulles papildināšanai ar garumu 5. Sešciparu izvades gadījumā aizstāt d ar x"%05x".

Visas formatēšanas opcijas ir dokumentētas kā daļa no java.util.Formatter.

Komentāri (11)

Ja kāda iemesla dēļ izmantojat pirms 1.5 Java, varat izmēģināt Apache Commons Lang metodi.

org.apache.commons.lang.StringUtils.leftPad(String str, int size, '0')
Komentāri (0)

Atrasts šis piemērs... Pārbaudīs...

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));
    }
}

Pārbaudīja šo un:

String.format("%05d",number);

Abi darbojas, manuprāt, maniem mērķiem String.Format ir labāks un kodolīgāks.

Komentāri (4)