Поток не меняет исходную коллекцию, поток берет элементы из sorce (это может быть коллекция, бесконечный генератор), затем пропускает их через цепочку (преобразование, фильтрация) на каждом шаге отображения, это будут новые объекты, а затем собираетчто передается в результате (это может быть коллекция, объединенная строка или целое число) и возвращать результат в переменной.Это обеспечивает декларативный стиль и неизменность, которые могут выполнять большую работу в многопоточных вычислениях без побочных эффектов.