具有无限参数的Java方法

具有无限参数的Java方法,java,methods,arguments,Java,Methods,Arguments,Spring框架使用的方法可以传递任意多的参数 我想写一个函数,也可以采取无限量的数据。如何调用此功能,以便我可以阅读有关它的信息?或者我如何定义它?它被称为 它允许方法接受任意数量的参数。它们可以作为方法中的数组进行访问: public void foo(String... args) { for (String arg : args) { // do smth with arg. } } 这是。编译器隐藏数组创建,因此 bar.foo(new String[

Spring框架使用的方法可以传递任意多的参数

我想写一个函数,也可以采取无限量的数据。如何调用此功能,以便我可以阅读有关它的信息?或者我如何定义它?

它被称为

它允许方法接受任意数量的参数。它们可以作为方法中的数组进行访问:

public void foo(String... args) {
    for (String arg : args) {
      // do smth with arg.
     }
}
这是。编译器隐藏数组创建,因此

 bar.foo(new String[] {"1", "2", "3"});
你写

 bar.foo("1", "2", "3");

要添加Bozho的答案,还可以在varargs之前的方法中使用其他参数:

//foo(13,“foo”,“bar”,“baz”);
//将打印:
//13-|福| | |巴| |巴|
公共void foo(int a,String…b){
System.out.println(a+“-”);
用于(字符串c:b){
系统输出打印(“|”+c+“|”);
}
}
但是,之后不能有其他类型的参数。这些方法不起作用:

public void bar(String... b, int b);
public void foo(int a, String... b, int b);

哪个类有这种方法?可能类似于静态main(String[]args)定义“无限量的数据”。您的第一个链接不再工作。当前链接为