首页 > 解决方案 > 从哈希图中搜索键并打印值

问题描述

我创建了一个 Hashmap,其中的 String 键表示 memberID(这是一个数值),值是 Athlete 对象的实例,例如姓名、地址和年龄。

我需要编写一个方法,它接受一个表示 memberId 的 String 参数并返回相关的值。我正在努力使用该方法,特别是如何仅返回与键关联的值(如果找到)。我下面的方法在找到特定键条目后返回所有 Athlete 值,我不确定如何隔离到仅找到匹配项的键值。有人可以指出我正确的方向吗?

谢谢!

public void findAthlete(String aNum)
   {     
      if(athletes.containsKey(aNum))
      {
            System.out.println("Key Value Present: " + athletes);
      }
      else 
      {

         System.out.println("Key Value not present within data");
      }
   }



标签: javahashmap

解决方案


我不太明白你的问题,但我认为你想要做的是从地图中提取值,所以假设你有一个 Athlete 类,你的 find 方法应该返回

public Athlete findAthlete(String aNum){...}

然后,如果发现,您可以退回运动员:

return athletes.getOrDefault(aNum, null);

您可以返回nullemptyAthlete或 an Optional<Athlete>,只要符合您的需要


推荐阅读