发布日期:2018-03-26
Java中入参里的3个点代表什么意思?+ 查看更多
Java中入参里的3个点代表什么意思?
+ 查看更多
发布日期:2018-03-10 11:23
分类:JAVA
浏览次数:415
以下方法的三个点是什么意思?例如:
public void myMethod(String... strings){ // method body }
回答
这意味着这个方法可以接受0个或多个String对象(或者是它们的一个数组)的参数。
请看以下链接的Arbitrary Number of Arguments的部分:
http://java.sun.com/docs/books/tutorial/java/javaOO/arguments.html#varargs
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)是不可以的。