Это не имеет отношения к источнику потока, а скорее к терминальной работе и оптимизации, выполненной в самой реализации потока. Например:
Stream.of(1,2,3,4)
.map(x -> x + 1)
.count();
Поскольку java-9, map
не будет выполняться ни разу.
Или:
someTreeSet.stream()
.sorted()
.findFirst();
sorted
может вообще не выполняться, поскольку источником является TreeSet
и получение первого элемента тривиально, но если это реализовано внутри потокового API или нет, это другой вопрос.
Так что настоящий ответ здесь - это зависит, но я не могу представить одну операцию, которая выполнялась бы больше, чем количество элементов в источнике.