第四章java中HashMap和HashSet的区别|
来源:网络
编辑:蝶伤
时间:2022-06-19
常见的面试问题之一是“HashMap 和 HashSet 有什么区别”。在我们真正看到区别之前,让我先简单介绍一下两者。
哈希映射
ashMap 实现了 Map 接口,将键映射到值。它不是同步的,也不是线程安全的。不允许重复键,并且允许空键和值。
HashMap<Interger,String> employeeHashmap=new HashMap<Integer,String>();
employeeHashmap.put(1,"Arpit");
employeeHashmap.put(2,"John");
哈希集
HashSet 实现了不允许重复值的 Set 接口。它不同步,也不是线程安全的。
HashSet employeeSet=new HashSet();
employeeSet.add("Arpit");
employeeSet.add("Arpit");
employeeSet.add("john");
上面的employeeSet 将有2 个元素,因为Set 不允许重复值。 add 方法用于将元素添加到 HashSet。如果它返回 true,则元素添加成功,但如果返回 false,则您正在尝试插入重复值。
public boolean add(Object o)
关于 HashSet 的一件主要事情是我们要在 HashSet 中添加的对象必须实现 Hashcode() 和 equals() 方法,以便我们可以检查重复值。如果我们要向 HashSet 添加自定义对象,那么我们必须 override() Hashcode( ) 和 equals() 方法根据我们的需要。如果我们不覆盖,那么对象将采用默认实现,这可能是不可取的。
HashMap 与 HashSet:
范围 | 哈希映射 | 哈希集 |
---|---|---|
界面 | 这是它们之间的核心区别。HashMap 实现了 Map 接口 | HashSet 实现 Set 接口 |
数据存储方法 | 它以 key->value 对的形式存储数据。因此它使用 put(key,value) 方法来存储数据 | 它使用 add(value) 方法来存储数据 |
重复 | HashMap 允许重复值但不允许重复键 | HashSet 不允许重复值。 |
表现 | 它比哈希集更快,因为值是用唯一键存储的 | 它比 HashMap 慢 |
哈希码计算 | 在哈希映射中,哈希码值是使用键对象计算的 | 在此,哈希码是根据值对象计算的。两个值对象的哈希码可以相同,因此我们必须实现equals()方法。如果equals()方法返回false,则两个对象不同。 |
相关文章:
- [其它]第六章JavaFutureTask示例|
- [其它]第六章JavaScheduledThreadPoolExecutor示例|
- [其它]第六章使用Callable和Future的JavaExecutorService示例|
- [其它]第六章JavanewCachedThreadPool示例|
- [其它]第六章JavanewFixedThreadPool示例|
- [其它]第五章在java中使用3个线程打印序列|
- [其它]第五章java中notify和notifyAll的区别|
- [其它]第五章我们可以在java中启动一个线程两次吗|
- [其它]第五章java中的对象级锁定与类级锁定|
- [其它]第五章Java线程连接示例|
相关推荐:
- [其它]第三章java中的抽象类|
- [其它]第四章java中的TreeMap与示例|
- [其它]第四章java中的hashcode()和equals()方法|
- [其它]第六章JavaFutureTask示例|
- [其它]计算机组成原理PDF扫描格式电子版百度云网盘下载
- [其它]程序设计语言概念(第9版)[Robert W. Sebesta]pdf格式电子版百度云网盘下载[53.8M]
- [其它]程序员必读之软件架构[Simon Brown]pdf格式电子版百度云网盘下载[41.6M]
- [其它]程序员的思维修炼 开发认知潜能的九堂课[Andy Hunt]pdf格式电子版百度云网盘下载
- [其它]程序员的职业素养[Robert C. Martin]pdf格式电子版百度云网盘下载[21.6M]
- [其它]程序员教程(第3版)[张淑平]pdf格式电子版百度云网盘下载[136.5M]
栏目分类
最新文章
热门文章
- 计算机组成原理PDF扫描格式电子版百度云网盘下载
- 硅谷之谜[吴军]pdf格式电子版百度云网盘下载[59.5M]
- 自选基金助手,一款Chrome扩展程序
- 七周七语言 理解多种编程范型[Bruce A. Tate]pdf格式电子版百度云网盘下载[9M]
- 系统集成项目管理工程师考试考眼分析与样卷解析(2014版)[软考新大纲研究组]
- 程序员面试金典(第5版)[Gayle Laakmann McDowell]pdf格式电子版百度云网盘下载[81.5M]
- 创业维艰 如何完成比难更难的事[Ben Horowitz]pdf格式电子版百度云网盘下载[65.3
- 程序员的思维修炼 开发认知潜能的九堂课[Andy Hunt]pdf格式电子版百度云网盘下载
- 图灵的秘密 他的生平、思想及论文解读[Charles Petzold]pdf格式电子版百度云网盘下
- OCP OCA认证考试指南全册:Oracle Database 11g(1Z0-051、1Z0-052、1Z0-053)[John Watson]pdf格式