Java 转换地图<;字符串,对象>;列出<;列表<;字符串>&燃气轮机;
我的目标如下:Java 转换地图<;字符串,对象>;列出<;列表<;字符串>&燃气轮机;,java,Java,我的目标如下: Map<String, Map<String, String>> object; 问题是:如何将此映射转换为列表 以下是我当前的解决方案: List<List<String>> listlist; ... for (Map<String, String> mss : object.values()) { List<String> list = ArrayList<String>();
Map<String, Map<String, String>> object;
问题是:如何将此映射
转换为列表
以下是我当前的解决方案:
List<List<String>> listlist;
...
for (Map<String, String> mss : object.values()) {
List<String> list = ArrayList<String>();
for (String s : mss.values) {
list.add(s);
}
listlist.add(list);
}
列表;
...
对于(映射mss:object.values()){
List=ArrayList();
用于(字符串s:mss.值){
列表。添加(s);
}
添加(列表);
}
显而易见的解决方案是遍历
映射
并提取值,但是有什么棘手的方法吗?您需要迭代每个方法,没有其他方法,但是您也可以使用流
来实现,您可以更清楚地发现:
Map<String, Map<String, String>> object;
List<List<String>> list = object.values().stream().map(m -> new ArrayList<>(m.values))
.collect(Collectors.toList());
Map对象;
List List=object.values().stream().map(m->newarraylist(m.values))
.collect(Collectors.toList());
对象值的实际类型是什么?这是其他映射
对象吗?您能键入预期的序列化输出吗?A)请澄清您的要求。是否只需要每个贴图条目的值?B)考虑增加你自己的试验。问“请为我做这项工作”的问题在这里大部分时间都不太好。请提供答案
Map<String, Map<String, String>> object;
List<List<String>> list = object.values().stream().map(m -> new ArrayList<>(m.values))
.collect(Collectors.toList());