我想避免使用 for 循环来迭代 HaspMap 来查找键,然后拾取与该键对应的值...任何人都可以帮助我实现相同的...? 下面给出的是我使用 forloop 的代码,我想用 containsKey function() 替换它
for (Entry<Long, Long> entry : sessionTimeStampHash.entrySet())
//if(sessionTimeStampHash.containsKey(sessionID))
{
if (entry.getKey().equals(sessionID))
{
sessionTimeStamp = entry.getValue();
}
}
最佳答案
你根本不需要循环。 map 是关联集合,这意味着它们是针对基于键的快速查找而设计和优化的。 map 应该这样使用:
sessionTimeStamp = sessionTimeStampHash.get(sessionID);
if (sessionTimeStamp != null) {
// do something with sessionTimeStamp
}
或者使用containsKey()
:
if (sessionTimeStampHash.containsKey(sessionID)) {
sessionTimeStamp = sessionTimeStampHash.get(sessionID);
// do something with sessionTimeStamp
}
请参阅Java Tutorial了解有关 map 和其他集合的更多信息。
关于java - 使用 hashMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5027428/