扩展HashMap的putChildren方法

时间:2013-11-16 12:17:24

标签: java javascript hashmap

我是Java的新手。如果你的答案考虑到这种情况,我会很感激。

我有疑问,我想开发一个关于扩展hashmap以添加putchildren方法的程序。我写了一些东西。

我的问题是:

任务是扩展HashMap以包含HashMaps作为对象。所以,这个内部hashMap也可以有键值对。它将像深度为2的树。完成方法数据后

Key1 = "RUBY" value=HashMap which has -> "key2" = 5248 && "VALUE" = German
Key1 = "PYTHON" value=HashMap which has -> "key2" = 1234 && -> "VALUE" = German

你将实现一个带有3个参数的putChildrenValue方法,String key,String key,Object 值。它将相应地存储系统。

我的代码是:

     public class ExtHashMap<K1, K2, V> extends HashMap<K1, HashMap<K2, V>>
     {     
        private static final long serialVersionUID = 1L;

        public ExtHashMap() {       
           super();   
        }

        public void putChildrenValue(K1 key1, K2 key2, V value) { 
            HashMap<K2, V> childMap = get(key2);
            if (childMap == null) { 
             childMap = new HashMap<K2, V>();
             put(key1, childMap);
            }
            childMap.put(key2, value);
         }    
      }

我运行代码,在选择Run as Java Application之后,Eclipse说=“选择不包含主类型”

1 个答案:

答案 0 :(得分:1)

您的陈述


    HashMap childMap = get(key2);

应该是


    HashMap childMap = get(key1);

当您尝试加载主地图时。