RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


Tip: Understanding the FindAny Method

Learn how to use the findAny method in java.util.Stream.


Understanding the findAny method in java.util.Stream. This returns an Optional describing an element, or an empty Optional if Stream is empty.

Also, remember that the same stream cannot be operated upon with multiple methods after a complete iteration.

import java.util.Optional;
import java.util.stream.Stream;

public class StreamsFindAny 

   public static void main(String[] args) 

      StreamsFindAny streamsFindAny = new StreamsFindAny();

   public void proceed() 
      Stream stream = Stream.of("1","5","10");

      Optional findAnyOutput = stream.findAny();
      System.out.println("FindAny output: " + findAnyOutput);

      //If you fail to reinitialize the stream again (as below), you will end up in an Exception case since the stream has already been operated in the previous lines.
      //Exception in thread "main" java.lang.IllegalStateException: stream has already been operated upon or closed
      stream = Stream.of("1","5","10");

      long streamCount = stream.count();
      System.out.println("Count of elements in stream: " + streamCount);



Expected output:

[root@mypc]# java StreamsFindAny
FindAny output: Optional[1]
Count of elements in stream: 3


Sridhar M S. is a Java developer from Bangalore, India. He holds a master's degree in Computer Science.
Email AuthorEmail Author
Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date