我有一个名为users的并发映射。我有用户对象与一些不是ID的整数键。我想用给定的ID找到用户。因此,我检查hashmap的所有元素,并返回用户对象(如果存在)。这里是我的代码:ConcurrentHashMap foreach循环问题
for(User u : users.values()) {
logger.error("u.getId() : " + u.getId());
logger.error("id : " + id);
if(u.getId() == id) {
logger.error("match");
return u;
}
}
logger.error("Not found: id:" + id);
for(User u : users.values()) {
logger.error(u.getPos() + ". user: " + u.getId());
}
然而,即使很难我的u.getId()和ID是相同的,我不能看到我的日志“匹配”。
213匹配但它不能输入以下if语句。 这里是我的日志:
你怎么看呢?
你是对的。他们很长。我应该用等于。并解释了有时将它们进行比较。我现在就试试。 – aykut