欢迎访问宙启技术站
智能推送

Java函数的使用:如何将集合类转换为数组

发布时间:2023-07-01 11:51:46

在Java中,可以使用集合类的 toArray 方法将集合转换为数组。toArray 方法有两种重载形式:

1. toArray():该方法没有参数,将集合转换为一个对象数组。

List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");

String[] array = list.toArray(new String[0]);

在上面的示例中,首先创建一个 ArrayList 对象,并添加了三个字符串元素。然后,通过调用 toArray 方法将 ArrayList 转换为一个字符串数组。toArray 方法接受一个数组参数,用于指定返回的数组类型。如果参数数组的长度小于等于集合的大小,则返回一个新创建的具有集合元素的数组;如果参数数组的长度大于集合的大小,则返回一个具有集合元素和后续空元素的数组。在示例中,通过传递一个长度为 0 的字符串数组参数,确保返回的数组大小与集合大小相匹配。

2. toArray(T[] a):该方法接受一个参数,即目标数组。如果目标数组的长度小于等于集合的大小,则返回一个新创建的具有集合元素的数组;如果目标数组的长度大于集合的大小,则返回一个具有集合元素和后续空元素的数组。

List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);

Integer[] array = new Integer[list.size()];
array = list.toArray(array);

在上面的示例中,首先创建一个 ArrayList 对象,并添加了三个整数元素。然后,创建一个整数数组,并将其传递给 toArray 方法。通过传递参数数组,确保返回的数组与参数数组引用相同。

要注意的是,通过 toArray 方法得到的数组类型为 Object[],而不是具体的集合元素类型。如果需要特定类型的数组,可以使用泛型,并传递指定类型的数组作为参数。这样可以避免在使用过程中出现类型转换错误。

总结起来,将集合类转换为数组可以通过调用 toArray 方法来实现。根据是否传递参数数组,可以控制返回的数组与参数数组是否引用相同。通过使用泛型可以确保返回的数组类型与集合元素类型一致。