为什么这样做的工作?:OK的String.format()需要一个数组作为一个参数
String f = "Mi name is %s %s.";
System.out.println(String.format(f, "John", "Connor"));
而且这并不?:
String f = "Mi name is %s %s.";
System.out.println(String.format(f, (Object)new String[]{"John","Connor"}));
如果该方法的String.format需要一个可变参数目的?
它编译好,但是当我执行这个String.format()将可变参数对象作为一个唯一的参数(数组本身的toString()值),所以它抛出一个MissingFormatArgumentException,因为它不能匹配第二个字符串说明符(%s)。
我该如何让它工作? 在此先感谢,任何帮助将不胜感激。
不确定,但是您可以在不将字符串数组转换为对象的情况下进行检查吗? – 2012-07-18 05:51:21