传递的参数多于格式字符串中实际使用的参数

时间:2011-08-13 17:39:39

标签: java string formatting findbugs

FindBugs在以下代码中为我提供了一个'传递的参数比格式字符串'中实际使用的更多参数:

String.format("00", bd.getHour())

bd.getHour()会返回int

有人可以澄清一下吗?我的目标是确保1位数的整数前面有0(1 - > 01,13-> 13 ......)。

在没有获取FindBugs消息的情况下实现此目的的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

String.format()遵循format string的规则,因此请使用:

String.format("%02d", bd.getHour());

因为您的专栏只会打印00并忽略添加的参数。