标签: java string
我的字符串是“1”,我必须添加前导零。我正在使用
if (mystring.length() == 1) { mystring = String.format("%02d", mystring); }
但我明白了:
java.util.IllegalFormatConversionException:%d无法格式化 java.lang.String参数
我也尝试过使用“%02f”。知道我为什么会收到这个错误吗?
答案 0 :(得分:2)
因为%d说明符需要整数类型值来格式化。如果您的字符串实际上是一个数字,请先将其解析为数字,然后将其传递给formatter:
mystring = String.format("%02d", Integer.parseInt(mystring));
答案 1 :(得分:0)
错误是因为String.format("%02d", mystring);期望十进制数...不是字符串,与%02f相同,这意味着浮动
String.format("%02d", mystring);
查看doc