可变参数

可变参数 其实是接收一个数组

  如果有多个参数,可变参数一定是最后一个

public static void print(int ... arr){   // 可变参数 其实是一个数组
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }

Arrays 工具类
  asList() 接收的是可变参数, 将集合转换成数组
  ArrayList list = Arrays.asList(arr)    
  数组转成集合,可以使用集合的思想去操作数组   ,数组不能添加,删除,集合可以
#### int[] arr = {11,22,33,44,55};
  ··List<Integer> list = Arrays.asList(arr);
  ··System.out.println(list); // 将arr 当做一个引用数据类型传入了
  ##基本数据类型的数组 在这里 会将一整个数组当做一个对象转成集合
  解决方法    Integer[] arr = {11,22,33,44,55};

Collection中toArray(T[] a)泛型版的集合转数组

import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;

public class demon4_asList {

    public static void main(String[] args) {
        //demo1();
        //demo2();
        //集合转数组  加泛型的
        ArrayList<String> l1 = new ArrayList<>();
        l1.add("a");
        l1.add("b");
        l1.add("v");
        l1.add("d");
        Object[] arr = l1.toArray();
        for (Object object  : arr) {
            String s1 = (String)object;
            System.out.println(s1);
        }
    }

    public static void demo2() {
        Integer[] arr = {11,22,33,44,55};
        List<Integer> list = Arrays.asList(arr);
        System.out.println(list); //  将arr 当做一个引用数据类型传入了
    }

    public static void demo1() {
        String[] arr = {"a","b","c"};
        List<String> list = Arrays.asList(arr);
        //list.add("d");
        System.out.println(list);
    }

}
竹杖芒鞋轻胜马,一蓑烟雨任平生。 回首向来萧瑟处,也无风雨也无晴。
原文地址:https://www.cnblogs.com/yaobiluo/p/11305881.html