Mat*_*xti 4 java int formatting typeconverter
可能重复:
带有前导零的整数
我编码的程序要求我标记库存号为012345的物品并将其存储在int变量中.
这是我正在做的事情的简要示例:
int test = 012345;
System.out.println(test);
Run Code Online (Sandbox Code Playgroud)
打印为:
5349
Run Code Online (Sandbox Code Playgroud)
如何将其打印为012345而不是5349?
编辑:我正在将其输入到我正在初始化的自定义类的构造函数的参数中.然后我使用一种方法返回当前数字,然后将其打印到终端窗口.
您得到一个错误的数字,因为当您将0添加到整数文字时,Java会将该数字解释为八进制 (即base-8)常量.如果要添加前导零,请使用
int test = 12345;
System.out.println("0"+test);
Run Code Online (Sandbox Code Playgroud)
您还可以使用带有说明符的格式化输出功能%06d,如下所示:
System.out.format("%06d", num);
Run Code Online (Sandbox Code Playgroud)
6表示"使用六位数字"; '0'表示"必要时用零填充".