15-HashMap和HashTable的区别

本文详细对比了HashMap与HashTable在JDK版本、线程同步、数据存储等方面的差异,并介绍了它们的应用场景,推荐在多线程环境下使用ConcurrentHashMap。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HashMap与HashTable的区别

1.考察目标

​ 集合的体系结构是否熟悉

​ JDK版本更新是否了解

2.题目分析

相同点:

​ 都是双列集合,一个键对应一个值

​ 都是键不能重复,但是值可以重复

不同点:

​ 出现的版本区别:

​ HashMap是JDK1.2版本出现的.

​ HashTable是JDK1.0版本出现的.

​ 线程同步的区别:

​ HashMap是线程不同步的.

​ HashTable是线程同步的.

​ 存储数据的区别:

​ HashMap可以存储null键和null值

​ HashTable不能存储null键和null值

3.应用场景

​ 双列集合优先使用HashMap集合

​ 如果是在多线程的场景下,也无需使用HashTable集合,我们可以使用ConcurrentHashMap集合,该集合是一个线程同步的!

​ Hashtable集合虽然使用不多,但是它有一个给力的子类:Properties集合在大量使用中,一般配合IO流来加载配置文件!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值