マジッド:
私は、ネストされた持っているMap
。このようなオブジェクトを:
Map<String,Map<Integer,Double>> items = getMap();
私はクラスが名前の持つMyClass
そのコンストラクタがこのようであること:
public MyClass(String city, int month, double average){}
今、私は変換するitems
にはMyClass
、このようリスト:
List<MyClass> myList = items.entrySet().stream()
.map(i-> new MyClass(i.getKey(), ?, ?))
.collect(Collectors.toList());
しかし、私が代わりに使用すべきかわからない?
アクセスを入れ子にInteger
してDouble
から値をMap
オブジェクト?
user7:
ネストされたマップを持っているので、あなたも、内側マップエントリを処理しなければなりません。(これは、市内には多くの月平均のペアがあると仮定しています)
List<MyClass> myList = items.entrySet()
.stream()
.flatMap(entry -> entry.getValue().entrySet()
.stream()
.map(innerEntry -> new MyClass(entry.getKey(), innerEntry.getKey(), innerEntry.getValue()))
)
.collect(Collectors.toList());