Hashtable与hashMap

本文介绍了Hashtable和HashMap的相似之处,如基于哈希表实现,使用单链表解决冲突。同时强调了它们的区别,例如默认容量、线程安全性、是否允许null值,以及扩容策略。还探讨了Hashtable在计算哈希值时的细节,如直接使用hashCode()和使用取模运算确定索引。
摘要由CSDN通过智能技术生成

                             Hashtable与hashMap  

 原文链接:https://blog.csdn.net/ns_code/article/details/36191279

Hashtable简介


    Hashtable同样是基于哈希表实现的,同样每个元素是一个key-value对,其内部也是通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。

    Hashtable也是JDK1.0引入的类,是线程安全的,能用于多线程环境中。

    Hashtable同样实现了Serializable接口,它支持序列化,实现了Cloneable接口,能被克隆。

几点总结


    针对Hashtable,我们同样给出几点比较重要的总结,但要结合与HashMap的比较来总结。

    1、二者的存储结构和解决冲突的方法都是相同的。

    2、HashTable在不指定容量的情况下的默认容量为11,而HashMap为16,Hashtable不要求底层数组的容量一定要为2的整数次幂,而HashMap则要求一定为2的整数次幂。

    3、Hashtable中key和value都不允许为null,而HashMap中key和value都允许为null(key只能有一个为nullÿ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haikuotiankongdong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值