And*_*ndi 3 java arrays parameter-passing
这些参数由类型后的三个点指定。但我不知道...这个方法是什么意思
public static void printNumberOfArguments(int... numbers) {
System.out.println(numbers.length);
}
Run Code Online (Sandbox Code Playgroud)
以及文档中
public static void method(long.. vararg) { /* do something */ }
Run Code Online (Sandbox Code Playgroud)
这是错误的我不知道为什么?
可以使用名为 varargs(可变长度参数)的特殊语法将任意数量的相同类型的参数传递给方法。这些参数由类型后的三个点指定。在方法的主体中,您可以将此参数作为指定类型的常规数组进行处理。
您的方法采用整数 vararg 参数,并使用数组的 length 属性在标准输出中输出参数的数量。
... 是这里用来指定可变参数的特殊语法。
我正在尝试为您提供两种类型或在 java 中的方法中传递可变参数:
不正确的例子:
public static void method(double... varargs, int a) { /* do something */ }
Run Code Online (Sandbox Code Playgroud)
该方法的正确版本是:
public static void method(int a, double... varargs) { /* do something */ }
Run Code Online (Sandbox Code Playgroud)