JavaSE——集合9:Map接口实现类—HashTable

news2024/11/29 3:54:25

目录

一、HashTable基本介绍 

二、HashTable底层源码解析

1.初始化数组长度为11,临界值为8(0.75*11),加载因子是0.75

2.对存放的值进行自动装箱

3.执行put方法

4.计算key的hash值

5.计算索引值,放入table数组中

6.插入重复的key会被替换

三、HashTable的扩容机制

四、HashMap与HashTable的对比


一、HashTable基本介绍 

  1. HashTable存放的元素是键值对:即K-V 
  2. HashTable的键和值都不能为null,否则会抛出NullPointerException
  3. HashTable使用方法基本上和HashMap一样
  4. HashTable是线程安全的(synchronized),HashMap是线程不安全的
  5. HashTable的底层是一个Entry数组

二、HashTable底层源码解析

1.初始化数组长度为11,临界值为8(0.75*11),加载因子是0.75

2.对存放的值进行自动装箱

3.执行put方法

4.计算key的hash值

5.计算索引值,放入table数组中

6.插入重复的key会被替换

替换前:

替换后: 

三、HashTable的扩容机制

HashTable的扩容在addEntry方法的rehash方法中执行:

注意:当存放的元素个数超过临界值8才会扩容。

扩容是将原来的数组*2+1,所以原有数组长度为11,扩容后是23。

四、HashMap与HashTable的对比

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2215916.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VMware安装Ubuntu虚拟系统

1、准备工作 1)下载并安装好VMware虚拟软件; 2)下载Ubuntu系统镜像文件。建议下载LTS长期支持版本,下载地址: Ubuntu系统下载 | Ubuntu 2、安装Ubuntux系统 2.1、新建虚拟机 打开VMware软件,在右侧“…

住房公积金 计算器-java方法

计算了一下房贷压力,以全额公积金贷款为例,贷款四十万,等额本金方式还款,房贷利率为2.85%,基本情况就是如下: 还款总额达到 提前还款的好处 按三十年计算,如果第一年借用亲朋好友的钱&#x…

无mac通过iOS Dev Center生成打包证书完整流程

很多人第一次使用uniapp打包ios APP应用的时候,都会遇到一个问题,就是如何生成打包证书。 看了uniapp官网的教程,教程上看到是在iOS Dev Center上创建证书,但是过程中却要求我们使用macOS系统来创建csr文件和p12文件。但是我们没…

【ChatGLM4系列】入门介绍以及API调用

目录 前言一、ChatGLM41-1、模型介绍1-2、关键概念1-3、场景示例1-4、模型概览 二、快速开始2-1、安装2-2、Demo案例2-3、请求参数2-4、异步调用 三、模型工具3-1、通用Web搜索3-2、函数调用3-3、增强检索3-4、文件问答 总结 前言 GLM 全名 General Language Model &#xff0c…

数据可视化-使用python制作词云图(附代码)

想象一下,当你写完一篇日记或者一篇文章后,想要知道里面哪些词语出现得最多。这时候,词云图就能派上用场了。它会统计出文章里每个词语出现的次数,然后把这些词语以不同大小的字体展示出来,出现次数越多的词语&#xf…

免费打工人必备工具箱

下载地址:https://pan.quark.cn/s/356d7f201d7a 图片处理工具 格式转换:轻松转换图片格式,满足不同需求。 ICO转换:将图片转换为ICO格式,适用于图标设计。 图片压缩:无损压缩图片,减小文件大小…

Oracle中解决select into值集为空的报错情况

先看为空的情况 procedure test is n number; begin select 1 into n from CUX_2_OM_RELEASE_LIMIT_V cov where cov.Customer_Idnull; end; CUX_2_OM_RELEASE_LIMIT_V中没有id是空的,因此返回的结果一定是空集 运行结果: 有时候我…

Excel使用技巧:筛选2组数据;条件格式突出显示数据

Excel的正确用法: Excel是个数据库,不要随意合并单元格。 数据输入的时候一定要按照行列输入,中间不要留空,不然就没有关联。 筛选2组数据 相信大家已经知道如何筛选1组数据,有时候我们需要同时筛选2组数据。有2步&…

探秘盒子浮动,破解高度塌陷与文字环绕难题,清除浮动成关键!

目录 一、浮动 1、为什么使用浮动? 2、浮动的概念 3、语法 4、浮动的特性 (3)浮动的元素会具有行内块元素的特性 5、浮动元素经常和标准流父级搭配使用 6、浮层的弊端 (1)高度塌陷 (2)…

无人机之声学识别技术篇

一、声学识别技术的原理 无人机在飞行过程中,其电机工作、旋翼震动以及气流扰动等都会产生一定程度的噪声。这些噪声具有独特的声学特征,如频率范围、时域和频域特性等,可以用于无人机的检测与识别。声学识别技术主要通过以下步骤实现&#x…

浙大数据结构:11-散列2 Hashing

这道题主要是小细节要把握&#xff0c;实际难度不大 机翻 1、条件准备 表大小&#xff0c;输入数据数 #include <iostream> #include<vector> #include<cmath> using namespace std; #define endl \nint Size,n;2、主函数 先输入数据&#xff0c;用ispr…

目前web浏览器播放rtsp视频流,h5播放rtmp监控方案比较,代码测试

在web上实现播放rtsp/rtmp视频流&#xff0c;由于浏览器不 能自定义协议&#xff0c;不能直接播放&#xff0c;市面上充满各种方案&#xff0c;鱼龙混杂&#xff0c;主要方案有两种&#xff1a; 1&#xff0c;浏览器插件方案&#xff0c;vlc浏览器控件&#xff08;已过期&…

远翔原厂芯片设计开发软件:降压恒流共阳极无频闪调光芯片FP7126/7127/7128,舞台灯磁吸轨道灯智能家居应用方案

FP7126 FP7127 FP7128是平均电流模式控制的 LED 驱动 IC&#xff0c;具有稳定输出恒流的能力&#xff0c;优秀的负载调整率与高精度的电流控制。不用额外增加外部补偿元件&#xff0c;简化 PCB 板设计。FP7126 FP7127 FP7128可接受 PWM 数位调光&#xff0c;建议调光频率 0.1kH…

事务使用方法

为什么需要事务&#xff1a; 示例&#xff1a; 银行转账问题 假定资金从账户A转到账户B&#xff0c;至少需要两步 账户A的资金减少 然后账户B的资金相应增加。 示例 假定张三的账户有1000元&#xff0c;李四账户有1元 UPDATE bank set moneymoney-500 WHERE name张三; UPDA…

以价换量,豆包血拼AI的商业考量

“ 借豆包AI推出智能耳机&#xff0c;字节跳动再战智能硬件&#xff0c;仍面临研发、营销成本高企和商业模式不明确的挑战&#xff0c;这一新尝试充满变数。 ” 转载&#xff1a; 科技新知 原创 作者丨颜瞾 编辑丨蕨影 没有哪个赛道&…

I\O进程线程(Day27)

一、学习内容 IO基础 概念 程序与外部设备进行交换的信息过程 分类 标准IO 封装好的相关库函数、有缓冲区、文件指针eg&#xff1a;fprintf、fscanf、fputc、fgetc、fputs、fgets、fopen、fclose... 操作流程 FILE *fp通过fopen打开文件 使用fprintf、fputc、fputs、fwrite把在…

【Linux】Linux进程概念

冯诺依曼体系结构 我们常见的计算机&#xff0c;如笔记本。我们不常见的计算机&#xff0c;如服务器&#xff0c;大部分都遵守冯诺依曼体系。 截至目前&#xff0c;我们所认识的计算机&#xff0c;都是有一个个的硬件组件组成&#xff0c; 输入单元&#xff1a;包括键盘 , 鼠…

选GB28181还是RTSP?

好多开发者&#xff0c;搞不清楚什么时候用GB28181&#xff0c;什么时候用RTSP&#xff0c;本文就二者使用场景和区别&#xff0c;做个大概的探讨&#xff1a; 定义与性质&#xff1a; GB28181&#xff1a;是中国国家标准&#xff0c;全称为《公共安全视频监控联网系统信息传输…

安科瑞诚邀您参加2024新加坡亚洲数据中心展

Exhibition Time: October 09-10, 2024 展览时间&#xff1a;2024年10月09日-10日 Exhibition Hall: Sands Expo & Convention Center 展览馆&#xff1a;Sands Expo & Convention Center Exhibition Number: BASEMENT2-L16 展览号&#xff1a;BASEMENT2-L16 Add…

文献阅读(222) VVQ协议死锁

题目&#xff1a;VVQ: Virtualizing Virtual Channel for Cost-Efficient Protocol Deadlock Avoidance时间&#xff1a;2023会议&#xff1a;HPCA研究机构&#xff1a;KAIST request-reply协议死锁如下图所示&#xff0c;每个node收到request之后发送reply&#xff0c;但是想…