Java 扩展HashMap以添加putChildren方法
我有个问题,我想开发一个关于扩展hashmap以添加putchildren方法的程序。。 我写了main类,但现在我想写putChildrenValue方法。。 我的问题是: 我需要实现一个putChildrenValue方法,它有3个参数,String键,String键,ObjectValue。它将相应地存储如上所述的系统 当我完成这个方法的时候,当你完成这个方法的数据Java 扩展HashMap以添加putChildren方法,java,hashmap,Java,Hashmap,我有个问题,我想开发一个关于扩展hashmap以添加putchildren方法的程序。。 我写了main类,但现在我想写putChildrenValue方法。。 我的问题是: 我需要实现一个putChildrenValue方法,它有3个参数,String键,String键,ObjectValue。它将相应地存储如上所述的系统 当我完成这个方法的时候,当你完成这个方法的数据 Key1 = "RUBY" value=HashMap which has -> "key2" = 5248 &
Key1 = "RUBY" value=HashMap which has -> "key2" = 5248 && "VALUE" = German
Key1 = "PYTHON" value=HashMap which has -> "key2" = 1234 && -> "VALUE" = German
我的主要课程是:
public static void main(String [] args)
{
ExtendedHashMap extendedMap = new ExtendedHashMap();
extendedMap.put (“Row1”, “Column1”, “German”);
extendedMap.put (“Row1”, “Column2”, “English”);
extendedMap.put (“Row1”, “Column3”, “Spanish”);
extendedMap.put (“Row2”, “Column1”, “Ruby”);
extendedMap.put (“Row2”, “Column2”, “Python”);
extendedMap.put (“Row3”, “Column3”, “Java”);
}
有人能帮我吗?可能是这样的:
import java.util.HashMap;
public class ExtHashMap<K1, K2, V> extends HashMap<K1, HashMap<K2, V>> {
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);
}
}
}
以下代码段给出了如何创建和使用它的示例:
ExtHashMap<String, int, String> map = new ExtHashMap<String, int, String>();
map.putChildValue("RUBY", 1234, "VALUE1");
map.putChildValue("PYTHON", 4321, "VALUE2");
childmaps是按需自动创建的。它可以是这样的:
import java.util.HashMap;
public class ExtHashMap<K1, K2, V> extends HashMap<K1, HashMap<K2, V>> {
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);
}
}
}
以下代码段给出了如何创建和使用它的示例:
ExtHashMap<String, int, String> map = new ExtHashMap<String, int, String>();
map.putChildValue("RUBY", 1234, "VALUE1");
map.putChildValue("PYTHON", 4321, "VALUE2");
childmaps是按需自动创建的。您有ExtendedHashMap的代码吗?有人告诉过你必须是Hashmap,还是你自己的选择?似乎还有其他数据结构更适合您正在尝试的工作。对于地图来说,儿童的概念没有意义。你在造树吗?如果是这样,考虑合成而不是继承。对于扩展HASMAP有任何代码吗?有人告诉过你必须是Hashmap,还是你自己的选择?似乎还有其他数据结构更适合您正在尝试的工作。对于地图来说,儿童的概念没有意义。你在造树吗?如果是这样,考虑合成而不是继承。