当前位置: 首页 > news >正文

Hashtable中的get(key)方法,为什么进行hash 0x7FFFFFFF

public synchronized V get(Object key) {
        Entry<?,?> tab[] = table;
        int hash = key.hashCode();
        int index = (hash & 0x7FFFFFFF) % tab.length;
        // 为啥要把hash值和0x7FFFFFFF做一次按位与操作呢,
		// 主要是为了保证得到的index的第一位为0,也就是为了得到一个正数。
		// 因为有符号数第一位0代表正数,1代表负数。

        for (Entry<?,?> e = tab[index] ; e != null ; e = e.next) {
            if ((e.hash == hash) && e.key.equals(key)) {
                return (V)e.value;
            }
        }
        return null;
    }

相关文章:

  • Hashtable中的rehash()方法
  • mysql查询一个时间段的数据
  • Linux中的shell是什么
  • JUC笔记
  • 共享模型之管程
  • 共享模型之内存
  • 共享模型之无锁
  • 全面解析ThreadLocal
  • BIO-NIO-AIO笔记
  • docker 运行出错 Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2/007
  • JAVA多态
  • 状态压缩DP--------蒙德里安的梦想
  • 区间DP————石子合并
  • C/C++无穷大的表示 0x7fffffff + 0x7fffffff= 负数
  • 李永乐(一)行列式计算——笔记
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • iOS小技巧之UIImagePickerController实现头像选择
  • js操作时间(持续更新)
  • magento 货币换算
  • react-native 安卓真机环境搭建
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • Vue小说阅读器(仿追书神器)
  • Xmanager 远程桌面 CentOS 7
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 从零开始学习部署
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 树莓派 - 使用须知
  • 微信开源mars源码分析1—上层samples分析
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • ​渐进式Web应用PWA的未来
  • ​决定德拉瓦州地区版图的关键历史事件
  • ​业务双活的数据切换思路设计(下)
  • #if #elif #endif
  • #QT(TCP网络编程-服务端)
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $NOIp2018$劝退记
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (arch)linux 转换文件编码格式
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (四)c52学习之旅-流水LED灯
  • (小白学Java)Java简介和基本配置
  • (转)ObjectiveC 深浅拷贝学习
  • (转载)从 Java 代码到 Java 堆
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • .Net Winform开发笔记(一)
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)
  • @Import注解详解
  • [20160902]rm -rf的惨案.txt
  • [2024最新教程]地表最强AGI:Claude 3注册账号/登录账号/访问方法,小白教程包教包会
  • [ActionScript][AS3]小小笔记