数组转换为集合:
    Arrays是一个工具类 - 专门服务于数组的 - 是一个静态类
    toString()其实就是在Arrays中重写了Object中的方法

    当数组转化为集合之后还是不能直接添加或者是删除元素,因为数组的特点就是一旦声明不能改变

    1. package Test19_Demo.Demo07;/*
    2. @create 2020--12--09--15:15
    3. */
    4. import java.util.Arrays;
    5. import java.util.List;
    6. public class ArrayAsListDemo {
    7. public static void main(String[] args) {
    8. //直接将一个数组转化为集合
    9. List<String> newList = Arrays.asList("Jack", "rose", "aobama");
    10. System.out.println(newList);//[Jack, rose, aobama]
    11. newList.add("黄飞鸿");
    12. System.out.println(newList);//java.lang.UnsupportedOperationException
    13. }
    14. }

    集合转换为数组:
    public T[ ] toArray(T[] a);
    public Object[ ] toArray(); - 集合转化为数组

    总结:

    1. 当数组转换为集合的时候要注意:不能进行添加和删除的操作 - 遵循数组的结构规则
    2. 当集合转换为数组的时候要注意:数据类型的强制转型或者泛型的使用
    3. 数组转为集合 - 理解从小到大

      集合转为数组 - 理解从大到小

    1. package Test19_Demo.Demo07;/*
    2. @create 2020--12--09--15:30
    3. */
    4. import org.omg.PortableInterceptor.INACTIVE;
    5. import java.util.ArrayList;
    6. import java.util.Arrays;
    7. public class ArrayListToArrayDemo {
    8. public static void main(String[] args) {
    9. //声明一个集合
    10. ArrayList<Integer> list = new ArrayList<>();
    11. list.add(1);
    12. list.add(11);
    13. list.add(12);
    14. list.add(13);
    15. list.add(14);
    16. list.add(15);
    17. list.add(16);
    18. list.add(17);
    19. list.add(18);
    20. list.add(19);
    21. //调用方法 - 将集合转化为Object类型的数组
    22. Object[] objects = list.toArray();
    23. System.out.println(Arrays.toString(objects));
    24. //向下转型
    25. Integer i = (Integer) objects[0];
    26. System.out.println(i.intValue());
    27. System.out.println("------------------------");
    28. //调用方法,将集合转换为带类型的数组
    29. Integer[] intArr = new Integer[10];
    30. Integer[] returnArr = list.toArray(intArr);
    31. System.out.println(Arrays.toString(intArr));//[1, 11, 12, 13, 14, 15, 16, 17, 18, 19]
    32. System.out.println(Arrays.toString(returnArr));//[1, 11, 12, 13, 14, 15, 16, 17, 18, 19]
    33. //带泛型的 - 当前这个类型就直接是集合中元素的类型,不需要强转
    34. Integer integer = returnArr[3];//下标是3
    35. System.out.println(integer.intValue());//13
    36. }
    37. }