[英]How to search Object stored in HashMap
我对HashMaps有疑问。 如何从HashMap搜索和返回对象详细信息
我在下面声明了哈希图
private HashMap <String,Champions> AllChampions = new HashMap<String, Champions>();
在下面,我声明了一个对象并将其添加到数组中,并且我想搜索该对象
Champions d = new Worrier("Elblond", 200, "Sword");
AllChampions.put(b.getName(), b);
如何搜索存储在哈希图中的对象。 我在下面使用的代码不起作用
private boolean isChampion(String name)
{
return AllChampions.containsKey(name);
}
public String getChampion(String name)
{
if (isChampion(name))
{
return AllChampions.get(name).toString();
}
return null;
}
您的错误在这里:
Champions d = new Worrier("Elblond", 200, "Sword");
AllChampions.put(b.getName(), b); // you are adding b, but declared d
更改为:
AllChampions.put(d.getName(), d);
顺便说一句,您的getChampion()
方法增加的价值很小:直接使用AllChampions.get(name)
。
关于最后一种方法的建议。
public Champion getChampion(String name)
{
if (AllChampions.containsKey(name))
{
return (Champion) AllChampions.get(name);
}
return null;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.