如何在数组中放置一个hashmap? conf [0] = new HashMap <string,object =“”>(); </string,>

时间:2013-05-28 13:26:49

标签: java android arrays hashmap

如何在数组中放置一个hashmap?

HashMap<String, Object>[] config= null;
        config[0] = new HashMap<String, Object>(); 
        config[0].put("Name", "Jon");
        config[0].put("valueA", 0);
        config[1] = new HashMap<String, Object>(); 
        config[1].put("valueA", 2323);

5 个答案:

答案 0 :(得分:4)

List<Map<String, String>[]> listOfMaps = new ArrayList<Map<String, String>[]>();

应该足够了。你没有使用()实例化它,因为它是一个数组,你需要提供一个大小或一系列HashMap作为数组构造函数的一部分。

答案 1 :(得分:1)

您可以在What's the reason I can't create generic array types in Java?

找到一些解释

我建议使用下一个结构:

ArrayList<HashMap<String, Object>> config= new ArrayList<HashMap<String,Object>>();
HashMap<String, Object> map;
map = new HashMap<String, Object>();        
map.put("Name", "Jon");
map.put("valueA", 0);       
config.add(map); 
map = new HashMap<String, Object>();        
map.put("valueA", 2323);                        
config.add(map); 

答案 2 :(得分:0)

虽然您可以声明泛型数组,但无法使用常规语法对它们进行实例化。

Map<String,Object>[] config = new HashMap<String,Object>[10];会给出编译错误: 无法创建HashMap的通用数组

但您可以使用Array.newInstance see answers to this SO question

答案 3 :(得分:0)

使用ArrayList而不是简单的数组。

            ArrayList<HashMap<String, Object>> arrayOfMap=new ArrayList<HashMap<String,Object>>();

答案 4 :(得分:0)

Map<String,Object>[] config = new HashMap[10];

只留下通用参数。