title: Adding two Java 8 streams, or an extra element to a stream
body: <p>I can add streams or extra elements, like this:</p>
  
  <pre><code>Stream stream = Stream.concat(stream1, Stream.concat(stream2, Stream.of(element));
  </code></pre>
  
  <p>And I can add new stuff as I go, like this:</p>
  
  <pre><code>Stream stream = Stream.concat(
                         Stream.concat(
                                stream1.filter(x -&gt; x!=0), stream2)
                                .filter(x -&gt; x!=1),
                                    Stream.of(element))
                                    .filter(x -&gt; x!=2);
  </code></pre>
  
  <p>But this is ugly, because <code>concat</code> is static. If <code>concat</code> were an instance method, the above examples would be much easier to read:</p>
  
  <pre><code> Stream stream = stream1.concat(stream2).concat(element);
  </code></pre>
  
  <p>And</p>
  
  <pre><code> Stream stream = stream1
                   .filter(x -&gt; x!=0)
                   .concat(stream2)
                   .filter(x -&gt; x!=1)
                   .concat(element)
                   .filter(x -&gt; x!=2);
  </code></pre>
  
  <p>My question is:</p>
  
  <p>1) Is there any good reason why <code>concat</code> is static? Or is there some equivalent instance method I'm missing?</p>
  
  <p>2) In any case, is there a better way of doing this?</p>