数组转集合的三种方式,集合转数组

数组转集合

在java中的数组有两种情况,一种是存放基本数据类型的数组,一种是存放对象类型的数组。

对于存放对象类型的数组,直接使用Arrays.asList方法即可
对于存放基本数据类型的,如果我们单纯使用Arrays.asList的方法去转换,只会得到对象类型为int[]的集合。这样子每一个元素都是一个基本数据类型数组的对象,而不是我们要存放的数据。

public static void main([]args){
	int []a = new int[10];
	for(int i=0;i<a.length;a++){
		a[i]=i;
	}
	List<int[]> intList = Arrays.asList(a);
	System.out.println(intList.toString());
	//可以发现打印出来的是个对象
	
	//----------------------------
	
	//在项目中导入commons-lang3的jar包,利用其提供的ArrayUtils方法
	//可以发现,就是将基本数据类型的元素转换成了包装类型的元素。每一个包装类型都是一个对象。
	Integer []integer = ArrayUtils.toObject(a); 
	//即,现在是对象元素的数组。再使用Arrays.asList方法
	List<Integer> integerList = Arrays.asList(integer); 
	System.out.println(integerList.toString());

	//----------------------------
	
	//当然也可以不导包,在jdk1.8的流式计算中,也提供了将基本数据类型转换成包装类型
	List<Integer> collect = Arrays.stream(a).boxed().collect(Collectors.toList());
	System.out.println(collect.toString());
}
集合转数组

集合的toArray方法提供了两种方式,一个是带参数的,一个是不带参数,使用不带参数的将转换为Object类型的。我们选择使用带参数的。

public static void main([] args){

	List<Integer> list = new ArrayList<>();
	list.put(1);
	list.put(2);
	list.put(3);
	Integer integer[] = list.toArray(new Integer[list.size()]);
	
	//你会发现,list.toArray方法提供了两种方式,选择使用有参的。
}
  • 0
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值