Java,参数中有3个点
作者:互联网
以下方法中的3个点是什么意思?
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)不行.
感谢Vash在评论中的澄清.
标签:java,variadic-functions 来源: https://codeday.me/bug/20190911/1803159.html