以下确保char(4)的输出,因此5为0005,43为0043:
if ( var > 1 && var <= 9 ) {
o.setOutput (String.format ("%0001d", i.getInput());
else if (var > 9 && var <= 99 ) {
o.setOutput (String.format ("%002d", i.getInput());
else if (var > 99 && var <= 999 ) {
o.setOutput (String.format ("%03d", i.getInput());
else if (var > 999 & var <=9999 ) {
o.setOutput (String.format ("%4d", i.getInput());
}
有没有办法写这个只是一行而不是多个if / case语句?
感谢。
答案 0 :(得分:5)
看起来你只想:
o.setOutput (String.format ("%04d", i.getInput());
格式字符串%04d
生成一个(至少)四个字符的输出字段,在左侧填充,并根据需要填充0
个字符。
答案 1 :(得分:0)
只需使用String.format("%04d", number);