主要是用来编写框架。
Arrays.aslist()传个参,传数组,传数组又传参。
可变参数必须在传参列表的最后一个。
原理:int… args 相当于 int[] args 调用时 传入任意个数参数,任意个数的参数,都会被保存到参数数组中。
代码示例:
@Test
public void demo2() {
System.out.println(add(10, 20, 30));
System.out.println(add(20, 30));
System.out.println(add());
System.out.println(add(new int[] { 1, 2, 3, 4, 5, 6 }));
}
// 定义一个可以使用可变参数的方法,可以传入多个参数 进行求和
public int add(int... args) {
int sum = 0;
for (int i : args) {
sum += i;
}
return sum;
}
@Test
public void demo1() {
// 使用Arrays.list将数组转换为list
int[] arr = { 1, 2, 3 };
List<int[]> list = Arrays.asList(arr);
System.out.println(list.size());// 1
Integer[] arr2 = { 1, 2, 3 };
List<Integer> list2 = Arrays.asList(arr2);
System.out.println(list2.size());// 3
// list3的arraylist不是通常意义上的,它不能改变长度 ,即不能增加或者删除元素
List<Integer> list3 = Arrays.asList(10, 20, 30);
System.out.println(list3.size());// 3
List list4 = Arrays.asList(arr2, 10, 20);
System.out.println(list4.size());// 3
}