在这个参数声明中,“Object”后面的三个点是什么意思:
public static int queryCount (
Connection conn, String whereClause,
Object ... params)
throws Exception
它与参数声明有何不同Object params
?
在这个参数声明中,“Object”后面的三个点是什么意思:
public static int queryCount (
Connection conn, String whereClause,
Object ... params)
throws Exception
它与参数声明有何不同Object params
?
三个点表示该方法可以获取尽可能多的 Object 类型参数作为参数。阅读有关“可变参数”参数的更多信息可能会有所帮助。
简而言之,它是数组的语法糖,限制它应该是参数列表中的最后一个参数。
例如,如下声明 main 方法是完全合法的
public static void main(String... args) {}
还有一个特点,这个参数是可选的,但你仍然会得到一个空数组作为参数的值。
这个特性是在 Java 中引入的,用于隐藏使用数组作为参数的过程,以varargs
.
正如文档所述,该过程仍然相同,但复杂性已降低。
请注意以下几点: