Java Stream toArray() 转换为特定类型的数组

作者:编程家 分类: java 时间:2025-07-07

使用Java Stream流可以方便地对集合进行各种操作,例如过滤、映射、排序等。而Java Stream提供的toArray()方法可以将流中的元素转换为一个数组。不仅如此,toArray()方法还可以指定数组的类型,以便将流中的元素转换为特定类型的数组。本文将介绍Java Stream的toArray()方法的用法,并提供相关的示例代码。

使用toArray()方法将流转换为数组

Java Stream提供了toArray()方法,可以将流中的元素转换为一个数组。toArray()方法有两种重载形式,一种是无参形式,另一种是带有一个参数的形式。无参形式的toArray()方法将返回一个Object类型的数组,而带有参数的toArray()方法可以将流中的元素转换为指定类型的数组。

下面是无参形式的toArray()方法的示例代码:

java

List list = Arrays.asList("apple", "banana", "orange");

Object[] array = list.stream().toArray();

System.out.println(Arrays.toString(array));

运行以上代码,输出结果为:[apple, banana, orange]。可以看到,toArray()方法将流中的元素转换为了一个Object类型的数组。

使用toArray()方法将流转换为指定类型的数组

如果需要将流中的元素转换为特定类型的数组,可以使用带有一个参数的toArray()方法。这个参数是一个IntFunction接口类型的参数,它用于创建指定类型的数组。下面是带有一个参数的toArray()方法的示例代码:

java

List list = Arrays.asList(1, 2, 3);

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

System.out.println(Arrays.toString(array));

运行以上代码,输出结果为:[1, 2, 3]。可以看到,toArray()方法将流中的元素转换为了一个Integer类型的数组。

使用toArray()方法将流转换为特定类型的数组

除了基本类型的数组,toArray()方法也可以将流中的元素转换为特定类型的数组。例如,可以将流中的元素转换为String类型的数组。下面是将流中的元素转换为String类型的数组的示例代码:

java

List list = Arrays.asList("apple", "banana", "orange");

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

System.out.println(Arrays.toString(array));

运行以上代码,输出结果为:[apple, banana, orange]。可以看到,toArray()方法将流中的元素转换为了一个String类型的数组。

Java Stream提供的toArray()方法可以将流中的元素转换为一个数组。通过无参形式的toArray()方法,可以将流中的元素转换为一个Object类型的数组。而通过带有一个参数的toArray()方法,可以将流中的元素转换为特定类型的数组。

以上是Java Stream toArray()转换为特定类型的数组的介绍和示例代码。通过使用toArray()方法,可以方便地将流中的元素转换为指定类型的数组,从而实现更灵活的数据处理。