首页 > 基础资料 博客日记
Java之List转Array的方法
2024-06-25 05:00:07基础资料围观258次
一、List转Array介绍
在JAVA编程中,List和Array都是很常见的数据类型。它们都可以储存多个相同类型的元素,由于使用场景不同,某些情况下需要将List转换成Array。List转换成Array主要有两种方式:
1. 利用List的toArray()方法;
2. 利用Collection的toArray()方法。
二、List的toArray()方法
List的toArray()方法可以将List类型的集合转换为数组类型,其实现方式如下:
List<String> list = new ArrayList<>();
list.add("Java");
list.add("Python");
list.add("JavaScript");
//String[] strings = new String[list.size()];
//list.toArray(strings);
String[] strings = list.toArray(new String[list.size()]);
System.out.println(Arrays.toString(strings));
//[Java, Python, JavaScript]
上述代码中,通过list.toArray(array)将List类型的集合转换成String类型的数组。
需要注意的是,在List类型转换成数组时,需要预先声明数组类型及其大小。
三、Collection的toArray()方法
public Object[] toArray();
public <T> T[] toArray(T[] a);
Collection的toArray()方法可以将Collection类型的集合转换为数组类型,使用方式如下:
Collection<String> collection = new ArrayList<>();
collection.add("Java");
collection.add("Python");
collection.add("JavaScript");
Object[] objects = collection.toArray();
String[] strings = Arrays.copyOf(objects, objects.length, String[].class);
System.out.println(Arrays.toString(strings));
//[Java, Python, JavaScript]
public <T> T[] toArray(T[] a)的使用
在toArray参数中直接确定使用什么数据类型来接受,T代表数据类型,[]代表的是数组,即在toArray()方法中传入一个具体数据类型的数组即可。直接返回的就是具体数据类型的数组对象。
长度定义方式一:直接给0即new String[0],如果长度不够,系统会自动加长度,这样就消耗了系统的资源。
长度定义方式二:长度给的过长,但是这些多余的长度还在系统中存在,就形成了一个内存的浪费。
长度定义方式三:就是在定义String[]数组的时候,使用集合的长度来定义数组的长度,因为集合的长度已经定了,其元素的个数也已经定了。
上述代码实现了Collection类型转换成String类型数组的功能。
需要注意的是,Collection的toArray()方法在执行时,需要传入指定类型的类型参数,否则会抛出ClassCastException类型的异常。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签: