通过 Java 8 流式 API 将集合转换为数组的步骤如下:创建流:通过集合的 stream() 方法创建流。映射到数组:使用 toArray() 方法将流映射到数组。
通过流式 API 将集合转换为数组
集合类提供了多种方法来将其元素转换为数组,最常用的方法是通过 Java 8 流式 API。
转换步骤:
stream() 方法创建流。toArray() 方法将流映射到数组。代码示例:
// 创建一个包含字符串的集合 Setnames = new HashSet<>(); names.add("John"); names.add("Mary"); names.add("Bob"); // 将集合转换为数组 String[] namesArray = names.stream() .toArray(String[]::new);
注意:
toArray() 方法使用一个工厂方法来创建目标数组。对于基本类型数组(如 int[]),可以使用 toArray(int[]::new)。toArray(new String[0]) 会创建一个空字符串数组。ConcurrentHashMap,可以使用 toArray(int) 方法指定数组的容量。其他方法:
除了流式 API 之外,还可以使用以下方法将集合转换为数组:
List.toArray() 方法:仅适用于 List 接口实现。
Collection.toArray(T[]) 方法:将集合转换为指定的数组类型。Arrays.asList() 方法:将数组转换为 List,然后使用 toArray() 方法。loop 遍历集合并将元素添加到数组:这是较低效的方法。