我有一個(gè)雙端Deque<Map<int, String> cars = new LinkedList();我想使用 Java 流將 deque 映射中的所有鍵收集到一個(gè)List<int>.有沒有辦法做到這一點(diǎn)?我試過(guò)類似的東西cars.stream().map(car -> car.keySet()).collect(Collectors.toList()這個(gè)問題與上一個(gè)問題不同。我想收集所有密鑰,而不是從雙端隊(duì)列中刪除地圖。
2 回答

牧羊人nacy
TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超7個(gè)贊
用途flatMap():
cars.stream()
.map(Map::keySet)
.flatMap(Set::stream)
.collect(Collectors.toList())

ABOUTYOU
TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個(gè)贊
您可以flatMap
使用地圖的鍵:
List<Integer> keys = cars.stream().flatMap(car -> car.keySet().stream()).collect(Collectors.toList());
添加回答
舉報(bào)
0/150
提交
取消