int 型数组和List相互转换

7,825 阅读1分钟

由于存在装箱问题,包装类(如String)数组可以直接和List进行转换,但是基本类型还是要使用循环进行装载,这里使用JDK 1.8中提供的Stream流,进行快速的转换

基本类

1. List转数组

List<Integer> list = new ArrayList<Integer>(Arrays.asList(1,2,3,4,5,6));

int[] array = list.stream().mapToInt(x->x).toArray();

2. 数组转化为List

// 定义数组 
int[] array = {1,2,3,4,5,6};

// 数组转换为List
List<Integer> list = Array.stream(array).boxed().collect(Collectors.toList());

包装类

1. List转数组

List<String> list = new ArrayList<String>(Arrays.asList("are","you","ok","?"));
String[] array = new String[list.size]; 
list.toArray(array);

2. 数组转List

String[] array = {"are","you","ok","?"};
List<String> list = Arrays.asList(array);
List<String> list = new ArrayList<String>(Arrays.asList(array));