Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Maps.filterKeys と Maps.filterValues という別々のメソッドがある理由を理解しようとしています。
どちらのメソッドにも同じ述語を渡した場合、結果は同じではありません - 述語がフィルタリングされるものを決定するためです。
Map<K, V>K と V が同じクラスでない限り、同じ述語を渡すことはできません。
Map<K, V>
Maps.filterKeys(Map<K, V> unfiltered, Predicate<? super K> keyPredicate); Maps.filterValues(Map<K, V> unfiltered, Predicate<? super V> valuePredicate);
名前が示すようにfilterKeys、キーをfilterValuesフィルタリングし、値をフィルタリングします。
filterKeys
filterValues