私はJava8とStreamを使用していることを学んでいます。私はjava8ストリームを使用して解決しようとしている問題があります。私はMap.value内のすべての一意の整数値()をしたい{0000132861=[6613, 6170, 6206], 0000135932=[6613, 6170, 6206], 0000122989=[6613, 6170, 6206], 0000138372=[3187, 6613, 8167, 6170, 6206], 0000138399=[6613, 6170, 6206]}
Java 8:マップの値であるすべてのリストのオブジェクトから<V>を作成する<K, List<V>>
-
は私がタイプMap<String, List<Integer>> accountMap
データと地図を持っています。私はaccountUserMap.values().stream().collect(Collectors.toSet())
を行うと 私はaccountMap.values()
を行うと
[3187, 6613, 8167, 6170, 6206]
と同じように私は私が同じデータ型Set<List<Integer>> [[3187, 6613, 8167, 6170, 6206], [6613, 6170, 6206]]
しかし、すべての重複リストが廃棄され得るList<List<Integer>>
[[6613, 6170, 6206], [6613, 6170, 6206], [6613, 6170, 6206], [3187, 6613, 8167, 6170, 6206], [6613, 6170, 6206]]
を取得します。
私はすべての重複した値をドロップしたいとSet<Integer> [3187, 6613, 8167, 6170, 6206]
は.forEach()を使用して、リストを反復することなく、それを行うための効率的な方法があるはずです取得したいです。