hashmap和hash table的区别

发布时间:2022-07-21T10:51:02 英语学习

一,Hashmap是什么

一般来说,HashMap的实例其实是有两个参数影响其性能的,也就是初始容量和加载因子。其基于哈希表的Map接口的实现。此实现提供所有可选的映射操作,并且其还允许使用null值和null键。(意思也就是说,这除了非同步和允许使用null之外,HashMap类,就与Hashtable大致相同了。)还有就是,这此类也不保证映射的顺序。特别是,它是不保证该顺序恒久不变的。此是实现假定哈希函数将元素适当地分布在各桶之间,可以作为是基本操作(get和put)提供稳定的性能。其中还迭代collection视图所需的时间与HashMap实例的“容量”(桶的数量)及其大小(键-值映射关系数)成比例。

二,hash table是什么

简单来说,我们所知道的哈希表,其就是一种依赖哈希函数组织数据。以此可以达到常数级别时间复杂度,插入和搜索都非常高效的数据结构。那么,更确切地来说,其也就是当我们插入一个新的键的时候,这个哈希函数将决定该键应该分配到哪个桶中,同时,其还会将该键存储在相应的桶中。