Java数组转换集合


数组转换集合

 方法一 : 数组转换集合

package com.mybatis.demo.exercise; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * @author yinsenxin */
public class TestArray2List { public static void main(String[] args) { // java数组转List 基本类型int []
        int [] array = {1,2,3,4,5}; List<Integer> list = new ArrayList<>(); for (int i = 0; i < array.length; i++) { list.add(array[i]); } // 非基本数据类型 {String Integer Double...}
        String[] stringArray = { "a", "b", "c", "d", "e" }; List<String> list1 = Arrays.asList(stringArray); } }

 

  基本类型数组 类如int类型, 不能使用 Arrays.asList();直接将数组元素转换到集合中;

  可以先将 int [] 转换成 Integer [] 类型的数组,然后在使用 Arrays.asList();进行转换到集合中;

  可以使用apache封装的数组工具类来完成 导入如下依赖

<dependency>
     <groupId>commons-lang</groupId>
     <artifactId>commons-lang</artifactId>
     <version>2.6</version>
</dependency>

 

package com.mybatis.demo.exercise; import org.apache.commons.lang.ArrayUtils; import java.util.Arrays; import java.util.List; public class TestArray2List { public static void main(String[] args) { int [] array = {1,2,3,4,5}; // 使用apache封装的数组工具类 ArrayUtils将int [] --> Integer []
        Integer[] integers = ArrayUtils.toObject(array); // 再通过Arrays.asList();转换
        List<Integer> integers1 = Arrays.asList(integers); } }

 

 方法二 : 使用 java8中的Stream来完成

 

package com.mybatis.demo.exercise; import java.util.*; import java.util.stream.Collectors; import java.util.stream.IntStream; import java.util.stream.Stream; /** * @author yinsenxin */
public class ArraySort { public static void main(String[] args) { // int 数组转换成 Integer数组
        int[] nums = {1,22,3,21}; //先将int数组转换为数值流
        IntStream stream = Arrays.stream(nums); //流中的元素全部装箱,转换为流 ---->int转为Integer
        Stream<Integer> integerStream = stream.boxed(); //将流转换为数组
        Integer[] integers = integerStream.toArray(Integer[]::new); // Integer数组 转List
        List<Integer> integers1 = Arrays.asList(integers); // int []数组 直接转换成 List集合
        List<Integer> collect = Arrays.stream(nums).boxed().collect(Collectors.toList()); } }

 

 

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM