Java中如何将迭代器转换为流呢?

戚薇 Java经验 发布时间:2023-06-27 17:25:19 阅读数:11705 1
下文笔者讲述迭代器转换为流的方法及示例分享,如下所示

迭代器转换为流的实现思路

借助  Iterator创建一个spliterator最为流的基础进行转换
==============================================================
首先,设置一个Interator-

Iterator<Integer>iterator = Arrays.aslist(50, 100, 200, 400, 500, 1000).iterator();
现在,我们使用了流-

Stream<Integer>stream = convertIterator(iterator);
上面,方法convertIterator()用于转换。以下是方法-

public static <T> Stream<T>
convertIterator(Iterator<T> iterator) {
   return StreamSupport.stream(((Iterable) () -> iterator).spliterator(), false);
}
例:Iterator转换为流的示例
import java.util.stream.*;
import java.util.*;
public class TestClass {
   public static <T> Stream<T>
   convertIterator(Iterator<T> iterator) {
      return StreamSupport.stream(((Iterable) () -> iterator).spliterator(), false);
   }
   public static void main(String[] args) {
      Iterator<Integer>iterator = Arrays.asList(88,99,111,222,333,444).iterator();
      Stream<Integer>stream = convertIterator(iterator);
      System.out.println("Iterator to Stream...");
      stream.forEach(s -> System.out.println(s));
   }
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202306/16878579476915.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者