title: Will Java 8 create a new List after using Stream "filter" and "collect"?
body: <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>