gpt4 book ai didi

Java HashMap containsKey函数

转载 作者:行者123 更新时间:2023-12-01 22:50:30 24 4
gpt4 key购买 nike

有人请告诉我HashMap的函数containsKey()它的内部是如何工作的。它是否使用equalshashcode函数来匹配 key 。我使用 string 键作为 hashmap,当我动态使用该键时,containskey 返回 false。例如(只是一个示例代码,不是我在应用程序中使用的原始代码)

class employee {
employee(String name) {
return name;
}
}

class test {
HashMap hm = new HashMap();
hm.put("key1",new Employee("emp1"));
hm.put("key2",new Employee("emp2"));
hm.put("key3","emp4");
hm.put("new Employee("emp5")","emp4");
System.out.println(hm.containsKey("emp5"));
}

最佳答案

键是一个 Employee 对象,而不是一个字符串,在 containsKey 中你有一个字符串。该比较将返回 false,因为字符串“emp5”不等于对象 Employee。

这里引用 containsKey 文档:

Returns true if this map contains a mapping for the specified key. More formally, returns true if and only if this map contains a mapping for a key k such that (key==null ? k==null : key.equals(k))

由于在您的情况下 key 是一个字符串,因此仅当 k 也是一个字符串并且其内容与 key 的内容相同时,“equals”才会返回“true”。

关于Java HashMap containsKey函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24796299/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com