Java 如何将一些自定义映射对象转换为LinkedHashMap?
这就是我要做的Java 如何将一些自定义映射对象转换为LinkedHashMap?,java,Java,这就是我要做的 Map<String, List<Address>> mapObj = someService.getSomeAddress(); Map mapObj=someService.getSomeAddress(); 使用上面的调用,我得到类型为Map 我想将mapObj作为另一个方法(我无法更改)中的参数发送为LinkedHashMap,该方法进行进一步处理 是否有任何方法可以在不影响mapObj中的数据的情况下解决此问题?您需要执行两个转换步骤 将所有
Map<String, List<Address>> mapObj = someService.getSomeAddress();
Map mapObj=someService.getSomeAddress();
使用上面的调用,我得到类型为Map
我想将mapObj
作为另一个方法(我无法更改)中的参数发送为LinkedHashMap
,该方法进行进一步处理
是否有任何方法可以在不影响mapObj中的数据的情况下解决此问题?您需要执行两个转换步骤
Address
对象转换为LinkedHashMap
对象Map
条目放入LinkedHashMap
对象中public static List<LinkedHashMap> addresstoMap(List<Address> addresses)
{
List<LinkedHashMap> list = new ArrayList<>();
for(Address a: addresses){
LinkedHashMap map = new LinkedHashMap();
// Add address fields to map here
list.add(map);
}
return list;
}
上面最后一个map
对象将在LinkedHashMap
数据类型中包含正确的表示
希望这有帮助 您需要执行几个转换步骤
Address
对象转换为LinkedHashMap
对象Map
条目放入LinkedHashMap
对象中public static List<LinkedHashMap> addresstoMap(List<Address> addresses)
{
List<LinkedHashMap> list = new ArrayList<>();
for(Address a: addresses){
LinkedHashMap map = new LinkedHashMap();
// Add address fields to map here
list.add(map);
}
return list;
}
上面最后一个map
对象将在LinkedHashMap
数据类型中包含正确的表示
希望这有帮助 嗯,是的。无论如何,您都需要创建一个副本。然而,地址如何变成列表还不清楚。而订单应该是什么也不清楚。这个方法关心地图的具体类型这一事实也是一种味道。是的。无论如何,您都需要创建一个副本。然而,地址如何变成列表还不清楚。而订单应该是什么也不清楚。而且,该方法关心地图的具体类型这一事实也是一种味道。
for (Map.Entry<String, List<Address>> e : m.entrySet()) {
map.put(e.getKey(), addresstoMap(e.getValue()));
}