流式传输迭代器的最简单方法
2022-09-03 15:19:07
假设你想流式传输迭代器的元素;让我们使用一个具体的例子,它实现 。Scanner
Iterator<String>
给定一个 ,说:Iterator
// Scanner implements Iterator<String>
Iterator<String> scanner = new Scanner(System.in);
从中创建一个选项是笨拙的:Stream<String>
StreamSupport.stream(
Spliterators.spliteratorUnknownSize(scanner, Spliterator.ORDERED), false);
或者稍微简洁一些,但很迟钝:
StreamSupport.stream(
((Iterable<String>) () -> new Scanner(System.in)).spliterator(), false);
在 JDK 的某个地方是否有返回给定的工厂方法?Stream<T>
Iterator<T>