我已经得到了一个测试驱动的开发问题(我需要根据提供的 junit 方法使其工作)基于实现一个使用字符串作为键和 ArrayLists 作为值的 HashMap。密钥需要能够支持一个或多个对应的值。我需要以一种可以从散列中添加或减去值的方式设置我的方法,然后查看散列的更新内容。我的斗争是从下面显示的单元方法(执行 myClass 及其 addMethod 方法)中获取信息,并将其正确放入哈希中。
void add() {
myClass = new MyClass("key1", "value1");
myClass.addingMethod("blargh", "blarghvalue");
myClass.addingMethod("blargh2", "uglystring");
myClass.addingMethod("blargh", "anotherstring");
//and so on and so on............
对于我的最终结果,当我打印出 myClass 的结果时,我需要看到类似:{blargh=[blarghvalue, anotherstring], blargh2=uglystring}
我需要能够添加到这个,以及删除值。
我对 java 集合很陌生(显然)。如果它们只有 1 对 1 的关系,并且哈希图是 1:1,我可以让它们工作。所以像这样一个非常简单的addingMethod:
public void addingMethod(String key, String value) {
hashMap.put(key, value);
将得到一个字符串字符串哈希图,但当然,如果我用一个新的键值对重用一个键,原来的键值就会被踩上并消失。但是,当涉及到动态处理哈希映射和数组列表时,并且超出了 1:1 的键:值关系,我迷失了方向。