List和数组之间互相转换
-
List转数组
Integer[] numberArr=new Integer[]{1,2,3}
-
方法一:使用
Arrays.asList()
不支持添加、删除元素(如果不需要删除、添加元素,推荐使用)
Integer[] numberArr=new Integer[]{1,2,3}; List<Integer> numberListUseArrays= Arrays.asList(numberArr);
-
方法二:使用
Stream
中的Collector
收集器List<Integer> numberListUseStream= Stream.of(numberArr).collect(Collectors.toList());
-
方法三:使用
Collections.addAll()
方法List<Integer> numberListUseCollections= new ArrayList<>(); Collections.addAll(numberListUseCollections,numberArr);
-
-
数组转List
List<Integer> numberList=new ArrayList<>(); numberList.add(1); numberList.add(2); numberList.add(3);
-
方法一:使用List中的
toArray()
方法(推荐使用,好理解)Integer[] numberArrUseList=numberList.toArray(new Integer[numberList.size()]);
-
方法二:使用
Stream
Integer[] numberArrUseStream=numberList.stream().toArray(Integer[]::new);
-
方法三:使用List中的
toArray()
方法和System.arraycopy()
System.arraycopy(numberList.toArray(), 0, numberArrUseArrayCopy, 0,numberList.size());
-