是否可以编写与String.format()
类似的函数,其中第一个参数是带占位符的字符串,其他参数可以是不同类型的?如何在Java中组织这个函数format
?
答案 0 :(得分:3)
是的,只需执行类似
的操作public static String myMethod(String str, Object... args) {
...
}
即。我们使用varargs。
2780 public static String format(String format, Object ... args) {
2781 return new Formatter().format(format, args).toString();
2782 }
答案 1 :(得分:1)
public static void someFunction(String string, Object... objects) { ... }
答案 2 :(得分:1)
这是var args,你可以传递很多参数来实现函数,quando函数接收这个就是把它转换成数组。 Obs:var args是最后一个参数。 对于String.format()的实现,您可以在sdk中看到源文件: 的java / SDK ... / src.zip
答案 3 :(得分:0)
肯定有可能:String.format
本身绝不是一种神奇的方法,所以我建议你看看它的源代码。基本语言功能称为 varargs 。
答案 4 :(得分:0)
public static String format(String str, Object... args)
答案 5 :(得分:0)
public static String format(String arg1, Object... args)
注意上面代码中的点…
。这标志着该方法的最后一个参数为变量参数。您可以使用varargs传递可变数量的参数。 vararg必须是方法中的最后一个参数。
答案 6 :(得分:0)
除Object... args
导致一组参数外,您可能希望查看重载:http://docs.oracle.com/javase/tutorial/java/javaOO/methods.html