📜  Java中的 from() 方法和示例(1)

📅  最后修改于: 2023-12-03 15:31:52.523000             🧑  作者: Mango

Java中的 from() 方法和示例

在Java 8中,新增了一个Stream API,提供了一组用于操作集合、数组等数据结构的方法,其中 from() 方法就是用于将集合、数组等数据结构转化为 Stream 对象的方法。下面我们来详细了解一下 from() 方法的用法和示例。

使用方法
public static <T> Stream<T> from(T[] array)
public static <T> Stream<T> from(Collection<T> collection)

from() 方法有两个重载版本,一个是将数组转换为 Stream,另一个是将集合转换为 Stream。这两个方法的返回值都是一个 Stream 对象,在使用时可以进行流式操作。

使用示例
将数组转换为 Stream
String[] arr = {"apple", "banana", "orange"};
Stream<String> stream = Stream.from(arr);
stream.forEach(System.out::println);

输出结果:

apple
banana
orange
将集合转换为 Stream
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
Stream<String> stream = Stream.from(list);
stream.forEach(System.out::println);

输出结果:

apple
banana
orange
处理空数组或空集合

在使用 from() 方法时,需要注意传入的数组或集合不能为 null,否则会抛出 NullPointerException 异常。如果要处理空数组或空集合,可以使用 Stream 中的 empty() 方法创建一个空流。

String[] arr = new String[]{};
Stream<String> stream = arr.length == 0 ? Stream.empty() : Stream.from(arr);
stream.forEach(System.out::println);

输出结果:

总结

from() 方法是将集合、数组等数据结构转换为 Stream 对象的重要方法之一。通过 from() 方法,可以快速将集合和数组转换为 Stream 对象,并进行流式操作。在使用 from() 方法时,需要注意传入的数组或集合不能为 null,否则会抛出 NullPointerException 异常。