All intermediate operations return a new instance Stream. On any single Stream instance only one terminal operator can be invoked, and it terminates the Stream rendering it unusable.
Intermediate operations: filter(), map(), flatMap(), distinct(), sorted(), peek(), limit(), skip() Terminal operations: anyMatch(), allMatch(), noneMatch(), collect(), count(), findAny(), findFirst(), forEach(), min(), max(), reduce(), toArray()