私は、彼らがマルチコアプロセッサを活用する並列ストリームを追加したことを知っている、と私はあなたがこのような何かでそれを使用することができることを知っている:Java 8 | HashMapのパラレルストリームのJava 8で
List<String> list = new ArrayList<String>();
list.parallelStream().forEach(str -> System.out.println(str));
しかし、私はどのように達成しますこのようなHashMapで何か?
Map<String, Integer> map = new HashMap<String, Integer>();
// won't work, because the Map class doesn't have the .parallelStream()
map.parallelStream().forEach((str, num) -> System.out.println(str + ":" + num));
誰もこのようなことを知っていますか?ありがとう
はい、しかし、 '.getValue()'減少の前提を呼び出すことはありませんか? –
何に比べて?コードの一部は、エントリから値(およびキー)を抽出する必要があります。 – rgettman
@ John S .: Map.Entry.getValueと 'Map.get'を混同しているかもしれません。ここで 'getValue'を呼び出すことは、' Map'ルックアップと同じではありません。これはマップの実装に依存しますが、通常、エントリは安価な 'getKey'メソッドと' getValue'メソッドを持つ解決されたマッピングの一種を表します。つまり、java.util.HashMapの場合、エントリからフィールドを読み込むことですハッシュルックアップではなくインスタンスです。 – Holger