关于java的 List 和 数组 的相互转换

 1. List 和 包装类数组的相互转换

//包装类和List	
	List<Integer> list = new ArrayList<>();
	Integer[] nums = {1, 2, 3};

//List 转 Integer[]数组
	//法1:
	Integer[] nums = list.toArray(new Integer[](list.size()));
	//法2:
	Integer[] nums = list.stream().toArray(Integer[]::new);	
	
// Integer[] 转 List
	//法1: Arrays.asList(T[] t) 或 Arrays.asList(T ...)
	List<Integer> list = Arrays.asList(nums);
    //法2: Collections.addAll()
	List<Integer> list = new ArrayList<>();
	Collections.addAll(list, nums);
	//法3:Arrays.stream(T[] t).collect(Colletors.toList())
	List<Integer> list = Arrays.stream(nums).collect(Collectors.toList());

2. List 和 基本数据类型的数组的转换

//基本类型和List
	List<Integer> list = new ArrayList<>();
 	int[] nums = {1, 2, 3};

// int[] 转 List
    //法1 : asList() : 不能增删
    List<Integer> list = Arrays.asList(Arrays.stream(nums).boxed().toArray(Integer[]::new));
    //法2 : toList() : 可以增删
	List<Integer> list = Arrays.stream(nums).mapToObj(Integer::new).collect(Collectors.toList());

// List<Integer> 转 int[]
	int[] nums = list.stream().mapToInt(Integer::valueOf).toArray();
	//或
	int[] nums = list.stream().mapToInt(i -> i).toArray();

3. 基本类型数组 和 包装类数组的转换

//包装类转基本类型数组
    Integer[] nums = new Integer[]{1, 2, 3};
    int[] arr = Arrays.stream(nums).mapToInt(Integer::valueOf).toArray();

//基本类型转包装类数组
    int[] nums = new int[]{1, 2, 3};
    Integer[] integers = Arrays.stream(nums).boxed().toArray(Integer[]::new);
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值