title: Is guava Maps.filterKeys same as going through stream to stream for the keys and looking up the map?
body: <p>Is doing Maps.filter same as looking to the collection and mapping for keys? Are both methods below the same? Do you reckon they are doing different things. Unit tests seemed fine but I want to double confirm.</p>
  <p>Below, My filter approach is different, but I would like to confirm Maps.filterKeys is same as going through stream of keys and querying for data ?</p>
  <pre><code> public List&lt;Record&gt; find(PrimaryKey key, Map&lt;PrimaryKey, Record&gt; data, Table table) {
          
          Set&lt;PrimaryKey&gt; primaryKeys = filterPrimaryKeys(data, key, table);
          return primaryKeys.stream()
                  .map(data::get)
                  .collect(Collectors.toList());
      }
      
      
     
      public List&lt;Record&gt; find(PrimaryKey key, Map&lt;PrimaryKey, Record&gt; data, Table table {
    
          Set&lt;PrimaryKey&gt; primaryKeys = filterPrimaryKeys(data, key, table);
          Map&lt;PrimaryKey, Record&gt; map = Maps.filterKeys(data, primaryKeys::contains);
          return Lists.newArrayList(map.values());
      }
  </code></pre>