java8ストリームでmap()
メソッドとforEach()
メソッドの違いについて混乱しました。例えば、ここでjava8ストリームマップは何ですか?
List<String> strings = Lists.newArrayList("1", "2");
Map<String, String> map = Maps.newHashMap();
strings.stream().map(s->map.put(s, s));
System.out.println(map);
私はここで空の出力を得たが、私はちょうど
List<String> strings = Lists.newArrayList("1", "2");
Map<String, String> map = Maps.newHashMap();
strings.stream().forEach(s->map.put(s, s));
System.out.println(map);
ようforEach()
にマッピング変更する場合、私は得ることができます
{1 = 1、2 = 2}
なぜmap()
メソッドが実行されなかったのですか?彼らの違いは何ですか?