桟橋ルイージ:
私はこのような地図のリストをしました:
List<Map<String,Object>> l = new ArrayList<>();
Map<String,Integer> m = new HashMap<>();
m.put("X", 1);
m.put("Y", 9);
l.add(m);
m = new HashMap<>();
m.put("X", 23);
m.put("Y", 6);
l.add(m);
このようなリストを取得するためにラムダプリミティブと、すべてのマップ値を線形化するための最良の方法は何ですか
List<Integer> = [1, 9, 23, 6]
?
xingbin:
試してみてください。
List<Integer> result = l
.stream()
.flatMap(map -> map.values().stream())
.collect(Collectors.toList());
System.out.println(result); // [1, 9, 23, 6]