java:如何创建一个支持任意数量参数的函数?
2022-09-01 15:14:49
是否可以在java中创建一个支持任意数量参数的函数,然后能够迭代提供给函数的每个参数?
谢谢
克菲尔
是否可以在java中创建一个支持任意数量参数的函数,然后能够迭代提供给函数的每个参数?
谢谢
克菲尔
Java 自 Java 1.5(2004 年 9 月发布)以来一直具有 varargs。
一个简单的例子看起来像这样...
public void func(String ... strings) {
for (String s : strings)
System.out.println(s);
}
请注意,如果要要求必须将一些最小数量的参数传递给函数,同时仍然允许变量参数,则应执行类似操作。例如,如果您有一个函数,该函数至少需要一个字符串,然后是一个可变长度参数列表:
public void func2(String s1, String ... strings) {
}
正如其他人所指出的,你可以使用Varargs:
void myMethod(Object... args)
这实际上等同于:
void myMethod(Object[] args)
事实上,编译器将第一种形式转换为第二种形式 - 字节码没有区别。所有参数必须具有相同的类型,因此,如果要使用具有不同类型的参数,则需要使用 Object 类型并执行必要的强制转换。