code: public static <K, V> List<V> removeAllIfByEntry(Map<K, V> map,
              Predicate<? super Entry<K, V>> filter) {
          return getEntryStreamWithFilter(map, filter).map(Entry::getKey)
                  .collect(toList()).stream().map(map::remove)
                  .collect(toList());
      }
docs: Remove all if by entry list.
  
  @param <K>    the type parameter
  @param <V>    the type parameter
  @param map    the map
  @param filter the filter
  @return the list