如何在 Java 8 中拼合映射中的列表

如何从整数映射转到字符串列表,例如:

<1, ["a", "b"]>,
<2, ["a", "b"]>

到字符串的拼合列表,例如:

["1-a", "1-b", "2-a", "2-b"]

爪哇 8


慕后森
浏览 89回答 2
2回答

白板的微信

您可以在值上使用:flatMapmap.values() &nbsp;&nbsp;&nbsp;.stream() &nbsp;&nbsp;&nbsp;.flatMap(List::stream) &nbsp;&nbsp;&nbsp;.collect(Collectors.toList());或者,如果您要使用地图条目,则可以使用Holger指出的代码:map.entries() &nbsp;&nbsp;&nbsp;.stream() &nbsp;&nbsp;&nbsp;.flatMap(e&nbsp;->&nbsp;e.getValue().stream().map(s&nbsp;->&nbsp;e.getKey()&nbsp;+&nbsp;s)) &nbsp;&nbsp;&nbsp;.collect(Collectors.toList());

侃侃无极

你可以使用这个:List<String>&nbsp;result&nbsp;=&nbsp;map.entrySet().stream() &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.flatMap(entry&nbsp;->&nbsp;entry.getValue().stream().map(string&nbsp;->&nbsp;entry.getKey()&nbsp;+&nbsp;"-"&nbsp;+&nbsp;string)) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.collect(Collectors.toList());这将循环访问映射中的所有条目,将所有值连接到其键并将其收集到新列表中。结果将是:[1-a,&nbsp;1-b,&nbsp;2-a,&nbsp;2-b]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java