java – 如何迭代MultiKeyMap?

我正在使用提供多键值对的commons-collections中的multikeyMap.我有3个键是字符串.我有两个问题,我看不出如何解决.

如何迭代所有多键值对?使用简单的HashMap,我知道它.

其次,如何修复前两个键的所有多键值对?这意味着我想得到像这样的东西multikey.get(“key1”,“key2”,?);未指定第三个键的位置.

最佳答案
迭代multikeyMap的键值类似于哈希映射:

    multikeyMapmultikeyMap = new multikeyMap();

    multikeyMap.put( "a1","b1","c1","value1");
    multikeyMap.put( "a2","b2","c2","value1");

    for(Map.Entry<multikeymultikeyMap.entrySet()){
        System.out.println(entry.getKey().getKey(0)
                +" "+entry.getKey().getKey(1)
                +" "+entry.getKey().getKey(2)
                + " value: "+entry.getValue());
    }

对于第二个请求,您可以根据上一次迭代编写自己的方法.

public static Setmultikeyirst,String second,multikeyMapmultikeyMap) {
        SetmultikeymultikeymultikeyMap.entrySet()) {
            if (first.equals(entry.getKey().getKey(0)) 
                && second.equals(entry.getKey().getKey(1))) {
                set.add(entry);
            }
        }
        return set;
    }

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...