What is the difference between `Stream.generate()` and `Stream.iterate()` for creating infinite streams?

Java Professional Hard

Java Professional — Hard

What is the difference between `Stream.generate()` and `Stream.iterate()` for creating infinite streams?

Key points

  • `generate()` independent values from Supplier
  • `iterate()` stateful sequence from seed and UnaryOperator
  • `generate()` infinite stream
  • `iterate()` infinite stream
  • `generate()` stateless operation

Ready to go further?

Related questions