在Java中获取Stream流主要有以下几种方式:
- 通过集合类(Collection)获取:
所有的java.util.Collection
接口的实现类,包括List
,Set
, 和Queue
等,都可以使用.stream()
方法来获取一个Stream。例如:
List<String> list = Arrays.asList("a", "b", "c");
Stream<String> streamOfList = list.stream();
Set<Integer> set = new HashSet<>(Arrays.asList(1, 2, 3));
Stream<Integer> streamOfSet = set.stream();
- 通过数组获取:
可以使用java.util.Arrays
类的静态方法stream()
将数组转换为Stream。
String[] array = {"x", "y", "z"};
Stream<String> streamOfArray = Arrays.stream(array);
- 通过Stream.of()方法创建:
对于少量元素,可以直接使用Stream.of()
静态方法创建一个Stream。
Stream<String> streamFromValues = Stream.of("apple", "banana", "cherry");
- 从Map中获取:
虽然Map本身不直接继承自Collection,但是可以通过调用其.keySet().stream()
或.values().stream()
来获取键或值的Stream,或者通过.entrySet().stream()
获取包含键值对的Entry对象的Stream。
Map<String, Integer> map = new HashMap<>();
// 获取键的Stream
Stream<String> keysStream = map.keySet().stream();
// 获取值的Stream
Stream<Integer> valuesStream = map.values().stream();
// 获取键值对的Stream
Stream<Map.Entry<String, Integer>> entriesStream = map.entrySet().stream();
- 其他数据源:
- 对于I/O操作,如文件读取,可以使用
Files.lines(Path path)
获取文件内容行的Stream。 - 使用Optional对象时,可以调用
Optional<T>.stream()
方法将可能存在的值转换成一个包含0个或1个元素的Stream。
以上就是在Java中获取Stream的一些常见方法。一旦获得了Stream,就可以利用Stream API进行各种高效、声明式的数据处理操作。
标签:map,java,Stream,stream,Arrays,获取 From: https://www.cnblogs.com/itcq1024/p/18004585