天天看點

JAVA中List轉數組和數組轉List

1. 遇到好多次這樣的問題了,直奔主題,附帶測試

2. 數組轉List:

核心代碼是​

​Arrays.asList(arr)​

​,示例:

import java.util.*;

public class asLists {
    public static void main(String[] args) {
        // 此處需要注意基本資料類型和包裝類的接收方式
        int[] arr = {1,2,3,4,5};
        Integer[] arr1 = {1,2,3,4,5};
        List<int[]> ints = Arrays.asList(arr);
        List<Integer> integers = Arrays.asList(arr1);
        // java8中流式處理方式
        List<int[]> collect = Stream.of(arr).collect(Collectors.toList());
        List<Integer> collect1 = Stream.of(arr1).collect(Collectors.toList());
    }
}      

3. List轉數組:

import java.util.*;

public class asLists {
    public static void main(String[] args) {
        List<String> list=new ArrayList<>();
        list.add("dog");
        list.add("cat");
        list.add("cow");
        // 注意,當聲明轉換的大小和類型時,自動傳回對應類型,否則傳回object類型
        // 但是無論如何,傳回都是包裝類
        String[] strings = list.toArray(new String[list.size()]);
        Object[] objects = list.toArray();
        
        // 流方式處理
        String[] strings1 = list.stream().toArray(String[]::new);
        Object[] objects1 = list.stream().toArray();
        // 如整形
        List<Integer> list1 = new ArrayList<>();
        list1.add(1);
        Integer[] integers = list1.toArray(new Integer[list1.size()]);
    }
}      

4. 還是挺重要的,需要記憶