Java中containsKey方法详解
Map
for (int element : array) { if (map.containsKey(element)) { hasDuplicate = true; break; } else { map.put(element, 1); } } "数组中是否有重复元素 " + hasDuplicate; 3 使用排序原理通过对数组进行排序,然后遍历。
containsKey(Object key):判断Map中是否包含指定的键 containsValue(Object value):判断Map中是否包含指定的值 equals(Object o):判断两个Map是否相等,即是否包含相同的键值对 isEmpty():判断Map是否为空 Map接口的实现类HashMap:基于哈希表的Map实现,允许使用null键和null值,不保证元素的。
Java中的contains方法用于检查集合或字符串中是否包含特定元素或子字符串,返回布尔值表示存在与否。以下是详细说明:
核心功能:适用对象List、Set、Map(通过containsKey、containsValue)、String
返回值:存在返回true,否则返回false
语法与示例:
1 集合中的用法:List(有序集合,允许重复)List
直接上API: containsKey(boolean containsKey(Object key)):如果此映射包含指定键的映射关系,则返回 true。更正式地说,当且仅当此映射包含键 k 的以下映射关系时才返回 true:key==null ? k==null : key.equals(k)。最多只能有一个这样的映射关系。 参数:key 测试在此映射中是否存在的键。
如果你用hashmap的话你应该覆盖hashCode方法,而不是equals方法,hashMap containsKey方法用的不是equals比较而是hashcode比较。如果你用treeMap那就实现Comparable接口,treeMap用compareTo实现containsKey的比较。不同的Map实现有不同的判断方式,所以,一般不建议用自己写的类作为key值,起码我是这么要求的。
特点: 单独使用:仅用于判断键是否存在,不返回对应的值。 结合索引器使用:如果需要获取值,则需要在判断键存在后再通过索引器访问值,这会导致两次查找。 使用场景:当仅需要判断键是否存在时,可以使用ContainsKey方法。但如果需要同时获取值,则不推荐单独使用ContainsKey,因为它相比TryGetValue方法效率较低。
1 基本方法: get(Object key):根据键获取对应的值,若键不存在,返回 null或自定义默认值,如 getOrDefault(key, defaultValue) put(K key, V value):添加键值对,若键已存在,则覆盖旧值并返回旧值,否则返回 null containsKey(Object key)、containsValue(Object value):检查键或值是否存在。
相关标签 :
code




