从地图内的列表中查找对象

Java新手

这是我在Stackoverflow中的第一个问题。我已经找到了一个建议的问题,并由我的同事给我做一些研究。

我的问题是我上课

   Class Function{
    String func;
   String funcname;
   boolean log;
   }

我创建了一些对象:

 obj1 : ("a" ,"b",true)- //these values come from either DB or UI
obj2 : ("c" ,"x",true)
obj3 : ("a" ,"z",true)

我有一个清单:

      List<function> flist;

现在我想在地图中找到该列表,并希望放入地图中

     Map<String, List<function>> funcMap

然后显示以下输出:

    a:[obj1 obj3]
    b:[obj2]

如果我有列表,但如何进行查找所需的上述输出

新的用户

试试这个,

将所有对象添加到中flist

初始化地图

  Map<String, List<Function>> funcMap = new HashMap<String, List<Function>>();

key根据对象将添加到值列表的func值将其添加到相关对象中。

  for (Function functionValue : flist)
    {
        List<Function> functionList = funcMap.get(functionValue.getFunc());
        if (functionList != null && !functionList.isEmpty())
        {
            functionList.add(functionValue);
        }
        else
        {
            functionList = new ArrayList<Function>();
            functionList.add(functionValue);
            funcMap.put(functionValue.getFunc(), functionList);
        }
    }

Atlast打印funcMap

    for (Map.Entry< String, List<Function>> entry : funcMap.entrySet())
    {
        System.out.println("Key :  " + entry.getKey() + "Values : "+entry.getValue());
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章