【发布时间】:2018-03-20 18:38:41
【问题描述】:
例如,对于这样的两个类:
Class RawItem {
private String category;
private int code;
private String name;
}
Class Item {
private int code;
private String name;
}
RawItem 列表如下:
[ { “类别”:“一个”, “代码”:1, “名称”:“项目 1” }, { “类别”:“一个”, “代码”:1, “名称”:“项目 1” }, { “类别”:“一个”, “代码”:2, “名称”:“项目 2” }, { “类别”:“b”, “代码”:1, “名称”:“项目 1” }, { “类别”:“b”, “代码”:1, “名称”:“项目 1” } ]
像这样把它变成Map<String, List<Item>>:
{
"a":[
{
"code":1,
"name":"item1"
},
{
"code":2,
"name":"item2"
}
],
"b":[
{
"code":1,
"name":"item1"
}
]
}
任何回复将不胜感激。谢谢。
【问题讨论】:
-
请发布您的尝试
-
如果主要是代码,那么你应该考虑更多地描述你的问题,告诉你在哪里找到问题(这需要发布你的尝试)
-
List<RawItem>到Map<String, Set<Item>>最好不过Item需要 equals+hashCode。 -
我需要保留原始列表的顺序
-
主要是代码,因为我引用了一些非代码作为代码,就是这样。问题已经描述清楚了
标签: java lambda collections java-stream functional-interface