title: Check if items in List<String> match with String attribute in list of objects
body: <p>Let's say I have a list of names:</p>
  <pre><code>List&lt;String&gt; names = new ArrayList&lt;&gt;();
  names.add(&quot;Paul&quot;);
  names.add(&quot;Jeff&quot;);
  names.add(&quot;Anna&quot;);
  </code></pre>
  <p>On the other hand, I have a list of people:</p>
  <pre><code>List&lt;Person&gt; people = new ArrayList&lt;&gt;();
  people.add( new Person(&quot;Paul&quot;, 30) );
  people.add( new Person(&quot;Jeff&quot;, 50) );
  </code></pre>
  <p>Person has name and age attributes. From the first list of names, I need to know what names are not present as names in the list of people. This is my attempt:</p>
  <pre><code>    List&lt;String&gt; namesNotPresent = new ArrayList&lt;&gt;();
      for (String name : names) {
          boolean nameNotPresent = people.stream()
                  .noneMatch(p -&gt; name.equals(p.getName()));
          if (nameNotPresent) {
              namesNotPresent.add(name);
          }
      }
  </code></pre>
  <p>I wonder if there is a better approach, a more functional one, and I also wonder if the list of people should be ordered?</p>
  <p>This is working for me though. I don't expect the list of names and people to be a huge list, there might be exceptions where they could have around 1000 items though.</p>