Java HashMap的containsKey() 方法

本文介绍了如何简单使用Java HashMap,包括创建对象、添加键值对、get和remove方法,以及containsKey方法的应用。重点讲解了如何通过put(), get()和remove()操作进行数据存储与检索,并演示了containsKey的使用来检查映射关系的存在。

简单使用

  1. HashMap 类位于 java.util 包中,使用前需要引入
  2. 添加键值对(key-value)可以使用 put() 方法
  3. 使用 get(key) 方法来获取 key 对应的 value
  4. 使用 remove(key) 方法来删除 key 对应的键值对(key-value)
	//创建HashMap对象
	HashMap<Integer, String> m = new HashMap<Integer, String>();
	//put() 方法
	m.put(1, "apple");
    m.put(2, "lemon");
    m.put(3, "mango");
    m.put(4, "peanut");
    m.put(5, "orange");
    System.out.println(m);
    //get(key) 方法
    System.out.println(m.get(3));
    //remove(key)
    m.remove(3);
    System.out.println(m);

containsKey() 方法

containsKey() 方法检查 hashMap 中是否存在指定的 key 对应的映射关系。

//检查 key 为 1 是否存在
if(m.containsKey(1)) {
     System.out.println(m.get(1));
}
`HashMap` 的 `containsKey` 方法用于检查 `HashMap` 中是否存在指定的键对应的映射关系。也就是说,该方法会判断在这个 `HashMap` 里,是否有某个特定的键被使用了。若存在,方法返回 `true`;若不存在,则返回 `false` [^1][^2]。 以下是 `containsKey` 方法的使用示例: ```java import java.util.HashMap; import java.util.Map; public class HashMapContainsKeyExample { public static void main(String[] args) { // 创建一个 HashMap 实例 Map<Integer, Integer> integerMap = new HashMap<>(); // 向 HashMap 中添加键值对 Integer key = 1000; integerMap.put(key, 111); // 使用 containsKey 方法检查键是否存在 boolean isKeyPresent = integerMap.containsKey(key); System.out.println("键 " + key + " 是否存在: " + isKeyPresent); // 检查一个不存在的键 Integer nonExistentKey = 2000; boolean isNonExistentKeyPresent = integerMap.containsKey(nonExistentKey); System.out.println("键 " + nonExistentKey + " 是否存在: " + isNonExistentKeyPresent); } } ``` 在上述代码中,首先创建了一个 `HashMap`,并向其中添加了一个键值对。然后使用 `containsKey` 方法检查已存在的键和不存在的键是否在 `HashMap` 中,并将结果打印输出。 需要注意的是,在使用 `containsKey` 方法时,键的类型和值的类型要匹配。例如,如果 `HashMap` 定义的键是 `Integer` 类型,在使用 `containsKey` 方法时传入的键也必须是 `Integer` 类型,若传入 `Long` 类型,即使值相等,`containsKey` 方法也会返回 `false` [^3]。 在性能方面,一般推荐将其中一个列表转为 `Map`,以 `id` 为键,对象或者直接以登录时间为值,然后通过一次 `for` 循环并使用 `containsKey` 方法判断 `id` ,这样整体的时间复杂度为 $O(n)$ [^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值