首页 > 解决方案 > 在地图中的所有值列表中查找值,如果找到则返回键。任何有效/更快的解决方案解决方案?

问题描述

我有 Map<String, List> data = new HashMap<String, List>(); 我想搜索所有列表中的值,如果找到任何列表,则返回键。我可以绕过先遍历键然后查找值吗?

    TreeMap<String, List<String>> departments = new TreeMap<String, 
    List<String>>();
    ArrayList<String> myList = new ArrayList<String>();
    myList.add("person1");
    departments.put("dep1", myList);
    String[] aValue = {"person1","person2"};
    
    public void selectValues( String... aValue)
    
    {
    
      for(String eachDept : departments.keySet()){
          List<String> peopleInTheDept = departments.get(eachDept);
          for(String person : aValue){
              if(peopleInTheDept.contains(person)){
                  result.add(person)
              }
          }
      }
      System.out.println(result);
    }

标签: arraylisthashmap

解决方案


推荐阅读