[英]Converting list of objects with map to array of primitives
我一直在找一些我需要做的事情,但是我很難把它們放在一起。 首先,這是我的目標,簡單地說:
Object1
Object2
Map<String, Double>
我需要做的是,從Object1
列表開始,在給定特定鍵的情況下獲取地圖值的double[]
(列表中的所有對象在地圖中具有相同的N個鍵)。
這是我的開始嘗試:
myList.stream().map(Object1::getObject2).map(Object2::getMyMap).map(m -> m.get(key).collect(Collectors.toCollection(ArrayList::new))
我不知道如何從這里獲得原始數組。 如果到目前為止這是好的,我從哪里開始? 如果有更好的方法來做這件事,我願意接受建議。 感謝任何幫助,謝謝。
使用.mapToDouble
創建DoubleStream
:
myList.stream()
.map(Object1::getObject2)
.map(Object2::getMyMap)
.mapToDouble(m -> m.get(key)) // or throw if key is not in map
.toArray();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.