Convert an Iterator to Stream in Java

At first, set an Interator −

Iteratoriterator = Arrays.asList(50, 100, 200, 400, 500, 1000).iterator();

Now, we have used stream −

Streamstream = convertIterator(iterator);

Above, the method convertIterator() is used for conversion. Following is the method −

public static  Stream
convertIterator(Iterator iterator) {
   return StreamSupport.stream(((Iterable) () -> iterator).spliterator(), false);
}

Example

Following is the program to convert an Iterator to Stream in Java −

import java.util.stream.*;
import java.util.*;
public class Demo {
   public static  Stream
   convertIterator(Iterator iterator) {
      return StreamSupport.stream(((Iterable) () -> iterator).spliterator(), false);
   }
   public static void main(String[] args) {
      Iteratoriterator = Arrays.asList(50, 100, 200, 400, 500, 1000).iterator();
      Streamstream = convertIterator(iterator);
      System.out.println("Iterator to Stream...");
      stream.forEach(s -> System.out.println(s));
   }
}

Output

Iterator to Stream...
50
100
200
400
500
1000
Updated on: 2019-09-25T08:37:03+05:30

482 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements