Java常见问题(二十二):HashMap的常用命令

题目分析:其他内容正在学习中…

【HashMap为什么会出现?】

  1. 数组的特点:数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;
  2. 链表:链表存储区间离散,占用内存比较宽松,故空间复杂度很小,但时间复杂度很大,达O(n)。链表的特点是:寻址困难,插入和删除容易。
  3. 是否有既寻址容易,插入和删除困难又简单的数据结构?
    这就是哈希表,其具体数据结构传送门: link.

【HashMap的常用命令有哪些?】

  1. 首先在使用前,我们需要新建一个哈希表
HashMap<Integer, Integer> hashMap = new HashMap<>();
  1. 之后,我们往往要输入键值对,使用**map.put(key, value)**方法:
hashMap.put(5, 2); 

当在hashmap中put的key在之前已经存过,则不会重复存储,会覆盖之前key对应的value。

  1. 当你需要删除键值对时,可以使用map.remove(key)
  2. 另外我们常用用到以下方法:
  • containsKey(Object key)方法,返回值为boolean,用于判断当前hashmap中是否包含key对应的key-value
  • containsValue(Object value)方法,返回值为boolean,用于判断当前hashmap中是否包含value对应的key-value
  1. 遍历hashmap的方法利用haspmap.entrySet().iterator():利用迭代器,从Entry中取出键、取出值,推荐使用这种方式进行遍历,效率较高。
Iterator<Entry<Integer, Integer>> iterator = hashMap.entrySet().iterator();
		while (iterator.hasNext()) {
			Entry<Integer, Integer> entry = iterator.next();
			Integer key = entry.getKey();
			Integer value = entry.getValue();
			System.out.print(key + "--->" + value);
			System.out.println();
		}

【题目拓展】

暂无

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值