爪哇 中Hashtable和HashMap之间的区别

常见的面试问题之一是“Hashtable和Hashtable有什么区别 哈希图 “当我开始使用它们时,无论它们之间的差异如何,我都会使用它们中的任何一个。在我们真正看到差异之前,让我先简要介绍一下两者。

爪哇 哈希图 :

哈希图

哈希图 实施 地图   接口 将键映射到值。它不同步,也不是线程安全的。不允许重复的键,并且允许空键以及值。

哈希表

哈希表实现Map 接口 将键映射到值。它是同步的并且是线程安全的。不允许使用重复键,也不允许使用null键。

哈希表 与HashMap:

参数
哈希表
哈希图
线程安全
没有
已同步
没有
性能
由于使用了adSafe和Synchronized,因此通常比HashMap慢
在单线程环境中,它比Hashtable快得多。因此,如果您不在多线程环境中工作,则建议使用hashMap
空键
不允许
允许空键和值
快速失败
哈希表中的枚举不会很快失败
hashMap中的迭代器快速失败
延伸
它扩展了相当古老的Dictionary类
它扩展了AbstractMap类
另类
别无选择
您可以将ConcurrentHashMap用于多线程环境

一些重要点需要讨论。

  • 同步意味着只有一个线程可以在一个时间点修改一个表。当任何线程对哈希表执行更新操作时,它将获取其上的锁,而其他线程则必须等待锁被释放。
  • 快速失败迭代器意味着,如果一个线程在哈希表上进行迭代,而另一个线程试图在结构上修改哈希图,则它将引发ConcurrentModification Exception并立即失败。结构上的修改意味着插入或删除可以更改地图结构的元素。

我们可以同步HashMap吗?

是的,我们还可以借助Collections.synchonizedMap(hashmap)同步HashMap,以便可以通过以下方式同步HashMap:


请通过 爪哇 核心面试题 了解更多面试问题。


导入联系人

您可能还喜欢:

相关文章

  • 10月02

    用竞彩篮球分析中的值初始化ArrayList

    在本文中,我们将学习使用竞彩篮球分析中的值初始化ArrayList。 数组列表 是竞彩篮球分析中List接口的实现类。它用于存储元素。它基于动态增长的阵列概念。我们可以通过几种方式用值初始化ArrayList。让’我们看到了其中一些…]

  • 3月17日

    爪哇 8中的PriorityQueue

    在本文中,我们将介绍竞彩篮球分析 8 PriorityQueue。当应该根据对象的优先级处理对象时,在这种情况下,我们使用PriorityQueue。这是一种特殊的队列(也称为非绑定队列),可以根据元素的自然顺序或基于[…]

  • 10月06日

    2d Arraylist 爪哇 示例

    在本文中,我们将看到如何在竞彩篮球分析中创建2d Arraylist。创建2d Arraylist的最佳方法是在竞彩篮球分析中创建列表的列表。 [crayon-601afb90e364a709776149 /]让’s创建一个程序来实现2d Arraylist 爪哇 。 [crayon-601afb90e364e557035193 /]输出:list3中的第二个元素:List3_Str2 list1中的第三个元素:List1_Str3 list2中的第一个元素[…]

  • 04 May

    哈希图 如何在竞彩篮球分析中工作

    最常见的面试问题是<code>HashMap如何在竞彩篮球分析中工作</code>, “HashMap的获取和放置方法如何在内部工作”。在这里,我试图通过一个简单的示例来解释内部功能。 [crayon-601afb90f2f9c661914675-i /]是竞彩篮球分析中最常用的集合之一。与其深入研究,不如从理论上入手,这样您就可以[…]

  • 10月21日

    如何在竞彩篮球分析中对HashSet进行排序

    在本文中,我们将看到如何在竞彩篮球分析中对HashSet进行排序。 哈希集 是一个不按任何顺序存储元素的集合。您可能会遇到需要对HashSet进行排序的情况。排序HashSet的方法有很多种,我们将在这里看到两种方法。使用TreeSet可以使用[…]

  • 10月20日

    要设置的竞彩篮球分析数组

    在本文中,我们将学习竞彩篮球分析数组设置转换。有很多方法可以将数组转换为set。 1.使用竞彩篮球分析 8’s Stream如果您使用的是竞彩篮球分析 8,建议您使用此方法。 [crayon-601afb90f34f9944203489 /]输出[John,Martin,Mary] 2.使用HashSet构造函数()我们可以直接调用HashSet‘s的java构造函数set […]

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

订阅我们的新闻

获取质量教程到您的收件箱。现在订阅。