Will Java 8 create a new List after using Stream "filter" and "collect"?
<p>I have code using Java8:</p>

<pre><code>List&lt;Integer&gt; list = new ArrayList&lt;Integer&gt;();
list.add(3);
list.add(5);
list.add(4);
list.add(2);
list.add(5);
list = list.stream().filter(i -&gt; i &gt;= 3).collect(Collectors.toList());
</code></pre>

<p>Original list is [3, 5, 4, 2, 5]. After "filter" and "collect" operation, the list changes to [3, 5, 4, 5].</p>

<p>Are all the operations perform on original list and does not create a new list? Or after "filter" and "collect" operation, return a new created list and ignore original list?</p>