以下方法中的三个点是什么意思?
public void myMethod(String... strings){ // method body }
这意味着可以将零个或多个String对象(或它们的数组)作为该方法的参数传递。
请参见此处的“任意数量的参数”部分:http : //java.sun.com/docs/books/tutorial/java/javaOO/arguments.html#varargs
在你的示例中,可以将其称为以下任意一种:
myMethod(); // Likely useless, but possible myMethod("one", "two", "three"); myMethod("solo"); myMethod(new String[]{"a", "b", "c"});
重要说明:以这种方式传递的参数始终是一个数组-即使只有一个。确保在方法主体中以这种方式对待它。
重要说明2:获取的参数…必须是方法签名中的最后一个。因此,myMethod(int i, String... strings)可以,但是myMethod(String... strings, int i)不可以。
myMethod(int i, String... strings)
myMethod(String... strings, int i)
感谢Vash在他的评论中的澄清。