title: How to extract non-intersection part of two ordered lists?
body: <p>I want to join two string lists. Both lists have a fixed order.</p>
  
  <p>Problem: the 2nd list contains partially the "end" of the 1st list. I never know how many items of the end of the first list are on top of the 2nd list.</p>
  
  <p>Example:</p>
  
  <p>1st list:</p>
  
  <pre><code>testa
  testb
  testc
  testa
  testd
  testg
  </code></pre>
  
  <p>2nd list:</p>
  
  <pre><code>testa //from 1st
  testd //from 1st
  testg //from 1st
  textf
  testc
  testb
  testa
  </code></pre>
  
  <p>Here you see the first elements in the 2nd list are "continued" from the 1st list. I thus want to remove these 3 items from the 2nd list and then join both lists.</p>
  
  <p>Question: how is such an operation called? Probably there are already frameworks like apache-commons CollectionUtils that might perform those operations?</p>