zl程序教程

您现在的位置是:首页 >  后端

当前栏目

集合转数组的方法_数组的定义方式

方法集合数组 方式 定义
2023-06-13 09:14:39 时间

大家好,又见面了,我是你们的朋友全栈君。

数组转集合

在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方法提供了两种方式,选择使用有参的。
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/191832.html原文链接:https://javaforall.cn