代码之家  ›  专栏  ›  技术社区  ›  Amit Kumar Gupta

从google hashmultimap访问元素的问题

  •  0
  • Amit Kumar Gupta  · 技术社区  · 15 年前

    我使用下面的代码从Google HashMultimap获取和处理值

        HashMultimap hmm = new HashMultimap();
        HashMultimap hmm2 = new HashMultimap();
        Element ele;
    :
        hmm2.put("name","Amit");
        hmm.put("Amit",ele);
        hmm.put("rohit",hmm2);
     :   
        Iterator itr =  hmm.keys().iterator();
        String ky = (String) itr.next();
        System.out.println(hmm.get(ky));
        ky = (String) itr.next();
        System.out.println(hmm.get(ky));
    

    在上面的代码中,如果map元素(或entry)是元素类型,那么我想做一些操作。如果是hashmultimap类型,则执行其他操作。如何检查对象并将其传递给另一个函数。

    2 回复  |  直到 15 年前
        1
  •  2
  •   Paul Blessing    15 年前

    HashMultimap SetMultimap hmm.get(ky) Set instanceof Multimap HashMap

        HashMultimap hmm = HashMultimap.create();
        HashMultimap hmm2 = HashMultimap.create();
        Element ele = new Element();
        hmm2.put("name", "Amit");
        hmm.put("Amit", ele);
        hmm.put("rohit", hmm2);
        Iterator itr = hmm.keys().iterator();
        String ky = (String) itr.next();
    
        Set elements = hmm.get(ky);
        Iterator elementsItr = elements.iterator();
        Object val = elementsItr.next();
        if (val instanceof Element) {
            doElementStuff((Element) val);
        }
    
        ky = (String) itr.next();
        elements = hmm.get(ky);
        elementsItr = elements.iterator();
        val = elementsItr.next();
        if (val instanceof Element) {
            doElementStuff((Element) val);
        }
    

    get()

        2
  •  1
  •   Woot4Moo    15 年前


    if (item instanceof Element) //Do things

    推荐文章