前情概要:在翻看spring基于配置文件部分的源码时,发现在classpathxmlapplicationcontext中的setconfiglocations(configlocations)传入的参数是string[]configlocations数组,但是在setconfilglocations方法中是用...接收的。
java中3个点的含义是:不定参数个数,也就是动态的参数个数
举个例子
public class stringcopy {
public static void main(string[] args) {
string[]a={"hello", "world", "123", "china", "csdn", "com"};
arraylist list = new arraylist<>();
list.add("1");
list.add("2");
list.add("3");
arraylist list1 = new arraylist<>();
list1.add("a");
list1.add("b");
list1.add("c");
system.out.println("-----传入一个对象------");
test(list);
system.out.println("-----传入两个对象------");
test(list,list1);
system.out.println("传入两个person对象");
test1(new person("zs","1"),new person("lisi","2"));
}
public static void test(list... arguments) {
for (int i = 0; i < arguments.length; i ) {
system.out.println(arguments[i]);
}
}
public static void test1(person...arguments){
for (int i=0;i
输出结果
-----传入一个对象------
[1, 2, 3]
-----传入两个对象------
[1, 2, 3]
[a, b, c]
传入一个person对象
person{username='zs', grade='1'}
person{username='lisi', grade='2'}