コレクションの「非正規化」マップを反復処理するための最良の方法は何ですか?
たとえば、次のマップがあります。
Map<String, List<String>> relations;
各キー->各値を反復処理するために、次のようにします。
for (Entry<String,List<String>> e : relations.entries()) {
for (String s : e.getValue()) {
System.out.println(e.getKey() + " - " + s);
}
}
デコレータなどでそれを解決するエレガントな方法はありますか?
私は次のようなものを見つけたいと思っています:
for(Entry e : Collections.getDenormalizeEntriesFromMapOfCollection(myMap)) {
System.out.println(e.getKey() + " - " + e.getValue());
}
それでも同じ結果が得られます。2番目の状況では、キーごとに1つのエントリ->コレクションアイテムがあります。