list<Integer>,Integer[],int[]之间的互转(jdk1.8)
偶然在开发过程中需要将int[] 转成 List
1 Listlist = new ArrayList<>(); 2 for(int i : ints1){ 3 list.add(i); 4 }
采用jdk1.8的新特性一行代码就可搞定,代码简洁
1 int[] ints = {1, 4, 5, 6}; 2 Listcollect = Arrays.stream(ints).boxed().collect(Collectors.toList());
整理了jdk1.8下 list
1 Listlist = new ArrayList<>(); 2 list.add(111); 3 // List -> int[] 4 int[] ints = list.stream().mapToInt(Integer::valueOf).toArray(); 5 System.out.println(ints.length); 6 7 // List-> Integer[] 8 Integer[] integers1 = list.toArray(new Integer[0]); 9 10 // int[] -> List11 List collect = Arrays.stream(ints).boxed().collect(Collectors.toList()); 12 System.out.println(collect.size()); 13 14 // int[] -> Integer[] 15 Integer[] integers = Arrays.stream(ints).boxed().toArray(Integer[]::new); 16 17 //Integer[] -> int[] 18 int[] ints1 = Arrays.stream(integers1).mapToInt(Integer::valueOf).toArray(); 19 20 //Integer[] -> list 21 List integers2 = new ArrayList<>(Arrays.asList(integers1));
同理,其他封装类类似
希望对看到此博文的读者有帮助。