List 转 Array数组

共有两个方法:

  • 方法一   toArray()无参方法:返回一个Object[ ] ,如果使用特定类型还需要强转非常麻烦
  • 方法二   toArray(T[ ]  a)带泛型参数:这个方法要特别注意这个泛型参数,如果是String类型还好,因为存在,可以使用toArray(new String[ list.size() ]),即 
        String[] strs = list.toArray(new String[list.size()]);

    但是对于int ,char,由于它们不是类,所以需要使用包装类Integer和Character,或者stream转换:

    public static void main(String[] args) {
            List list =  new ArrayList<>();
            list.add(1);
            list.add(2);
            Integer[] a = list.toArray(new Integer[list.size()]);
            int[] b = list.stream().mapToInt(Integer::valueOf).toArray();
            System.out.println(Arrays.toString(b));
        }

     

你可能感兴趣的:(java)