面试真题------hashmap与hashset
HashSet与HashMap的区别
面试中经常被问到HashMap与HashSet的区别。于是本渣静下心来总结了一下HashSet与HashMap的区别。
先了解一下HashMap跟HashSet
HashSet:
HashSet实现了Set接口,它不允许集合中出现重复元素。当我们提到HashSet时,第一件事就是在将对象存储在
HashSet之前,要确保重写hashCode()方法和equals()方法,这样才能比较对象的值是否相等,确保集合中没有
储存相同的对象。如果不重写上述两个方法,那么将使用下面方法默认实现:
public boolean add(Object obj)方法用在Set添加元素时,如果元素值重复时返回 "false",如果添加成功则返回"true"
HashMap:
HashMap实现了Map接口,Map接口对键值对进行映射。Map中不允许出现重复的键(Key)。Map接口有两个基本的实现
TreeMap和HashMap。TreeMap保存了对象的排列次序,而HashMap不能。HashMap可以有空的键值对(Key(null)-Value(null))
HashMap是非线程安全的(非Synchronize),要想实现线程安全,那么需要调用collections类的静态方法synchronizeMap()实现。
public Object put(Object Key,Object value)方法用来将元素添加到map中。
HashSet与HashMap的区别:
HashMap | HashSet |
实现了Map接口 | 实现Set接口 |
存储键值对 | 仅存储对象 |
调用put()向map中添加元素 | 调用add()方法向Set中添加元素 |
HashMap使用键(Key)计算Hashcode |
HashSet使用成员对象来计算hashcode值, 对于两个对象来说hashcode可能相同, 所以equals()方法用来判断对象的相等性, 如果两个对象不同的话,那么返回false |
HashMap相对于HashSet较快,因为它是使用唯一的键获取对象 | HashSet较HashMap来说比较慢 |
转载自https://www.cnblogs.com/codercui/p/6841730.html
转载于:https://www.cnblogs.com/technologykai/articles/9041716.html
面试真题------hashmap与hashset相关推荐
- 入职阿里啦!字节大牛耗时八个月又一力作,Java面试真题精选
一道面试题 让我们开门见山,直面主题:Dubbo 服务里面有个服务端,还有个消费端你知道吧? 服务端和消费端都各有一个线程池你知道吧? 那么面试题来了:一般情况下,服务提供者比服务消费者多吧.一个服务 ...
- 把最新JAVA面试真题(阿里/京东/菜鸟)整理出来,却被自己菜哭了
前言 2020终于迎来了最后的两个月,这一年,全世界都不安定,被疫情包围,渐渐治愈和免疫,国内虽然看着和往常没有多大的区别,但对于经济的冲击,不知道又倒退了多少年?大大小小的公司面临倒闭或已破产,对于 ...
- 2023华为面试真题
[华为]面试真题: 面试前需要准备: 1. Java 八股文:了解常考的题型和回答思路: 2. 算法:刷 100-200 道题,记住刷题最重要的是要理解其思想,不要死记硬背,碰上原题很难,但 大多数的 ...
- 2021百度Android岗面试真题收录解析,搞懂这些直接来阿里入职
前言 这是一篇软文.但是绝对不是鸡汤:为啥不是呢?因为我文笔太差-偶尔矫情发发牢骚(勿喷) 说说程序猿行业 现在社会上给IT行业贴上了几个标签:高薪.高危.高大上.秃顶(哈哈).这些标签我相比大家都比 ...
- 2021大厂Java面试真题(六)
2021大厂Java面试真题(六) * * 2021 [华为]面试真题* * : * * 1.Java 常用集合及特点?* * List:ArrayList.LinkedList.Vector.Sta ...
- 百度统计 java 实现思路_2019社招阿里、腾讯、蚂蚁金服「四面」Java面试真题分享...
在过去很长一段时间内,国内互联网一直处于三足鼎立状态,BAT即百度.阿里巴巴.腾讯.而在最新的互联网企业价值榜上,百度却被蚂蚁金服挤出前三的位置. 能够进一线互联网公司,是大部分程序员奋斗的目标,有很 ...
- android广告页白屏_年度整理!2056页《大厂安卓岗面试真题解析合集》火爆全网...
前言 2020年还有最后一个月就结束了,时间一眨眼就过去了.今年面试有没有被面试官虐呢,明年跳槽想跳去哪个大厂呢,这是个问题.说实话,今年我面试也被虐了,为了明年能找到一份心怡的工作,特地的从朋友那里 ...
- “烤面经了“~2022最新大厂Java面试真题总结,可带劲了
前言 疫情到现在已经持续有3年的时间了,由于疫情的影响,无数行业都受到了影响,互联网寒冬下,许多程序员被裁,大环境格外困难. 我发现一个奇怪的现象:那些跳槽的人,总是从一个坑,跳进令一个坑中.毕竟一年 ...
- 2.牛批了 Android 2021中高级面试题 一线大厂和二线大厂面试真题精选 (京东 附答案)第二套 22k+
笔者是面霸,面试500+场 当过考官:面过别人500+场 去过500强,也呆过初创公司. 斩获腾讯.美团,字节跳动,蚂蚁金服,华为.OPPO,offer!我有一套速通大厂技巧分享给 ...
最新文章
- 区块链入门之基础知识
- 输入http://localhost/,apache出现You don't have permission to access/on this server.的提示,如何解决?...
- 从全球最大光伏展看中国光伏行业:火爆的背后是什么?
- Date类的构造方法和成员方法
- P5488-差分与前缀和【NTT,生成函数】
- LeetCode 2076. 处理含限制条件的好友请求(并查集)
- session.merge 缓存不更新_如何保证缓存与数据库双写时的数据一致性?
- 处理移动端pdf展示问题
- 除非 Windows Activation Service (WAS)和万维网发布服务(W3SVC)均处于运行状态,否则无法启动网站。IIS 7...
- form表单属性名相同java_form表单提交 list对象给Java 后台结合
- 一步一步写算法(之内存)
- python赋值标志_Python中的赋值、引用和深浅拷贝
- 拓端tecdat|R语言广义相加(加性)模型(GAMs)与光滑函数可视化
- 第151天:网页中插入百度地图方法(不需要密钥)
- Excel-制作简单的环形柱状图
- mysql 分页 pageindex_根据当前页号(pageIndex)和页大小(pageSize)获取分页数据
- 3❤️Jenkins从零到壹❤️ :常用功能大全(JAVA 小虚竹)
- English Pod 听力学习之路 C41 - C68
- 30个很棒的jQuery幻灯片放映插件
- 计算机视觉课程设计:基于SSD、Dlib多进程目标检测的对比研究
热门文章
- ionic iphone下的问题
- 只有在配置文件或 Page 指令中将 enableSessionState”的异常解决办法
- ASP.NET的权限问题
- 区块链溯源系统架构---区块链工作笔记002
- C/C++网络编程工作笔记0003---客户服务端程序说明
- SpringCloud学习笔记001-SpringCloud_001_SpringCloud简介_单体架构_微服务架构_服务注册与发现_微服务调用关系
- 2015年4月7号的日志
- 走进COM组件系列(三)
- shell sed 替代1
- linux c++模拟简易网络爬虫