编程语言
首页 > 编程语言> > Java,参数中有3个点

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