使用Java 8的逗号分隔字符串列表到列表列表 [英] List of comma separated String to Map of list using java 8
本文介绍了使用Java 8的逗号分隔字符串列表到列表列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个用逗号分隔的字符串列表-
I have a list of comma separated strings -
List: format = <unique id, label>
----- values -----
ab123,X
cd123,Y
ab123,Y
cd123,Z
------------------
我想使用Java 8将此列表转换为 Map< String,List< String>>
,其中key是唯一ID,值是标签列表( Map< unique-id,List< label>>).
I want to convert this list to Map<String, List<String>>
using java 8 where key would be the unique id and value would be the list of labels (Map<unique-id, List<label>>).
示例-
Map[
ab123=List[X, Y],
cd123=List[Y, Z]
]
请在这里帮助我,以便我可以使用Java 8来实现.
Could you please help me here so that I could implement this using java 8.
如果我想使用dto类,也可以使用Map-
Also instead of Map, if I want to use dto class -
Class A {
private String id;
private List<String> labelList;
// Getters and Setters methods
}
,我希望创建一个 A类
的列表,例如-
and I expect to create a list of class A
, for example -
List[
A [id="ab123", labelList = List[X, Y],
A [id="cd123", labelList = List[Y, Z]
]
我怎么能得到那个?
推荐答案
yourList.stream()
.map(x -> x.split(",", 2))
.collect(Collectors.groupingBy(
x -> x[0],
Collectors.mapping(x -> x[1], Collectors.toList())
));
这篇关于使用Java 8的逗号分隔字符串列表到列表列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文