とがMap<String, ArrayList>
ありますSet<String>
。マップ全体を繰り返し処理せずに、指定されたキーを持つペアのみが残るように、マップのキーを文字列のセットと「交差」させる方法はありますか?私の主な関心事は、パフォーマンスと、よりエレガントに実行できるものにホイールを再発明することです。
ただやる:
map.keySet().retainAll(set);
通りのJavadoc、キーセットの変化をマップに戻って反映されています。
...セットはマップによってサポートされているため、マップへの変更はセットに反映され、その逆も同様です。...
ここにデモがあります:
Map<String, String> map = new HashMap<String, String>();
map.put("1", "one");
map.put("2", "two");
map.put("3", "three");
Set<String> set = new HashSet<String>();
set.add("1");
set.add("3");
map.keySet().retainAll(set);
System.out.println(map); // {3=three, 1=one}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加