Java 中由 int 型返回字符串时,经常用 String.format 方法,传入 %d,%2d, %02d 类似参数,记录下这些参数的含义。

String.format 传入 %XYd 的意思,拆解如下,
%d :正常输出十进制数 。
%Yd:十进制数,输出 Y 位。如果本身大于 Y 位,正常输出。
%XYd:十进制数,输出 Y 位,不足 Y 位就补 X 。如果本身大于 Y 位,正常输出。

以 %d,%2d, %02d 为例,
%d:十进制数正常输出 。
%2d:十进制数,输出 2 位。如果本身大于 2 位,正常输出。
%02d :十进制数,输出 2 位,不足 2 位就补 0 。如果本身大于 2 位,正常输出。

示例,

public class TestFormat {

    public static void main(String[] args) {
        long k = 5;

        System.out.println(String.format("%d",k));
        System.out.println(String.format("%2d",k));
        System.out.println(String.format("%02d",k));
        System.out.println(String.format("%03d",k));
    }
}

结果,

5
 5
05
005

如果 k 本身大于 2 位的话,就正常输出了。
示例,

public class TestFormat {
    public static void main(String[] args) {
        long k = 555;

        System.out.println(String.format("%d",k));
        System.out.println(String.format("%2d",k));
        System.out.println(String.format("%02d",k));
        System.out.println(String.format("%03d",k));
        System.out.println(String.format("%04d",k));
    }
}

结果,

555
555
555
555
0555