什么是将多个地图(作为值)放到另一个地图的最佳方法?

时间:2015-08-24 14:50:52

标签: java collections hashmap

我有一个要求,我有多个地图,每个地图的值都不同,如..

Map<String,Boolean> a = new HashMap <String,Boolean>();
Map<String,HashSet<String>> b= new HashMap <String,HashSet<String>>();
Map<String,String> c = new HashMap <String,String>();
Map<String,ArrayList<String>> d = new HashMap <String,ArrayList<String>>();

现在我希望所有这些地图(a,b,c d)用作另一个地图(比如说e)的值,需要作为服务响应返回。

有人可以建议如何处理这些不同类型的地图吗?

编辑:基本上,我想将地图a,b,c,d放入e(无论是地图或列表或任何最适合的地方),并作为对调用方法的响应发送

1 个答案:

答案 0 :(得分:0)

我不是100%确定你想要什么,但听起来你想要有这些地图的地图。

Map<SomeKey, Map<String,?>> e;

有了这个,你可以这样做:

e.put(key1, a);
e.put(key2, b);
e.put(key3, c);
e.put(key4, d);

然后,你可以像这样把它们拿出来:

Map<String, ?> stringMap = e.get(key1);
Object value = stringMap.get("some string");

然后投出最终值。