java中hashcode方法的用途是什么? [复制]

2024-01-11

当我们有equals(), compareTo()方法 为什么有一个hashcode()Java 中的方法?

如果我们使用HashTable我们必须重写hashcode()方法,除了快速访问随机密钥之外还有什么特殊原因吗?如果我们重写hashcode()方法 可能的实施方式是什么?

Java如何保证对象在内存中的唯一性?


Hashcodes are typically used to enhance the performance of large collections of data.

In hashing我们计算hash code。这是一项额外的任务。当我们对添加到集合中的每个对象进行附加操作时。性能如何提升?


您必须始终覆盖equals and hashCode同时,履行他们相互依存的合同。即使在最低的软件工程标准下,矛盾地实现它们的类也会被破坏并且是不可接受的。

As to why人们会使用哈希表数据结构:因为它是随机访问键值存储的最快选择。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中hashcode方法的用途是什么? [复制] 的相关文章

  • 在 Java 中连接和使用 Cassandra

    我已经阅读了一些关于 Cassandra 是什么以及它可以做什么的教程 但我的问题是如何在 Java 中与 Cassandra 交互 教程会很好 如果可能的话 有人可以告诉我是否应该使用 Thrift 还是 Hector 哪一个更好以及为什
  • Java中反射是如何实现的?

    Java 7 语言规范很早就指出 本规范没有详细描述反射 我只是想知道 反射在Java中是如何实现的 我不是问它是如何使用的 我知道可能没有我正在寻找的具体答案 但任何信息将不胜感激 我在 Stackoverflow 上发现了这个 关于 C
  • 如何找到给定字符串的最长重复子串

    我是java新手 我被分配寻找字符串的最长子字符串 我在网上研究 似乎解决这个问题的好方法是实现后缀树 请告诉我如何做到这一点或者您是否有任何其他解决方案 请记住 这应该是在 Java 知识水平较低的情况下完成的 提前致谢 附 测试仪字符串
  • 制作一个交互式Windows服务

    我希望我的 Java 应用程序成为交互式 Windows 服务 用户登录时具有 GUI 的 Windows 服务 我搜索了这个 我发现这样做的方法是有两个程序 第一个是服务 第二个是 GUI 程序并使它们进行通信 服务将从 GUI 程序获取
  • INSERT..RETURNING 在 JOOQ 中不起作用

    我有一个 MariaDB 数据库 我正在尝试在表中插入一行users 它有一个生成的id我想在插入后得到它 我见过this http www jooq org doc 3 8 manual sql building sql statemen
  • 反射找不到对象子类型

    我试图通过使用反射来获取包中的所有类 当我使用具体类的代码 本例中为 A 时 它可以工作并打印子类信息 B 扩展 A 因此它打印 B 信息 但是当我将它与对象类一起使用时 它不起作用 我该如何修复它 这段代码的工作原理 Reflection
  • 操作错误不会显示在 JSP 上

    我尝试在 Action 类中添加操作错误并将其打印在 JSP 页面上 当发生异常时 它将进入 catch 块并在控制台中打印 插入异常时出错 请联系管理员 在 catch 块中 我添加了它addActionError 我尝试在jsp页面中打
  • 路径中 File.separator 和斜杠之间的区别

    使用有什么区别File separator和一个正常的 在 Java 路径字符串中 与双反斜杠相反 平台独立性似乎不是原因 因为两个版本都可以在 Windows 和 Unix 下运行 public class SlashTest Test
  • 十进制到八进制的转换[重复]

    这个问题在这里已经有答案了 可能的重复 十进制转换错误 https stackoverflow com questions 13142977 decimal conversion error 我正在为一个类编写一个程序 并且在计算如何将八进
  • 如何为俚语和表情符号构建正则表达式 (regex)

    我需要构建一个正则表达式来匹配俚语 即 lol lmao imo 等 和表情符号 即 P 等 我按照以下示例进行操作http www coderanch com t 497238 java java Regular Expression D
  • JRE 系统库 [WebSphere v6.1 JRE](未绑定)

    将项目导入 Eclipse 后 我的构建路径中出现以下错误 JRE System Library WebSphere v6 1 JRE unbound 谁知道怎么修它 右键单击项目 特性 gt Java 构建路径 gt 图书馆 gt JRE
  • getResourceAsStream() 可以找到 jar 文件之外的文件吗?

    我正在开发一个应用程序 该应用程序使用一个加载配置文件的库 InputStream in getClass getResourceAsStream resource 然后我的应用程序打包在一个 jar文件 如果resource是在里面 ja
  • 总是使用 Final?

    我读过 将某些东西做成最终的 然后在循环中使用它会带来更好的性能 但这对一切都有好处吗 我有很多地方没有循环 但我将 Final 添加到局部变量中 它会使速度变慢还是仍然很好 还有一些地方我有一个全局变量final 例如android Pa
  • 如何在 javadoc 中使用“<”和“>”而不进行格式化?

    如果我写
  • 无法捆绑适用于 Mac 的 Java 应用程序 1.8

    我正在尝试将我的 Java 应用程序导出到 Mac 该应用程序基于编译器合规级别 1 7 我尝试了不同的方法来捆绑应用程序 1 日食 我可以用来在 Eclipse 上导出的最新 JVM 版本是 1 6 2 马文 看来Maven上也存在同样的
  • 如何从指定日期获取上周五的日期? [复制]

    这个问题在这里已经有答案了 如何找出上一个 上一个 星期五 或指定日期的任何其他日期的日期 public getDateOnDay Date date String dayName 我不会给出答案 先自己尝试一下 但是 也许这些提示可以帮助
  • 如何在桌面浏览器上使用 webdriver 移动网络

    我正在使用 selenium webdriver 进行 AUT 被测应用程序 的功能测试自动化 AUT 是响应式网络 我几乎完成了桌面浏览器的不同测试用例 现在 相同的测试用例也适用于移动浏览器 因为可以从移动浏览器访问 AUT 由于它是响
  • 声明的包“”与预期的包不匹配

    我可以编译并运行我的代码 但 VSCode 中始终显示错误 早些时候有一个弹出窗口 我不记得是什么了 我点击了 全局应用 从那以后一直是这样 Output is there but so is the error The declared
  • simpleframework,将空元素反序列化为空字符串而不是 null

    我使用简单框架 http simple sourceforge net http simple sourceforge net 在一个项目中满足我的序列化 反序列化需求 但在处理空 空字符串值时它不能按预期工作 好吧 至少不是我所期望的 如
  • Spring Boot @ConfigurationProperties 不从环境中检索属性

    我正在使用 Spring Boot 1 2 1 并尝试创建一个 ConfigurationProperties带有验证的bean 如下所示 package com sampleapp import java net URL import j

随机推荐

  • Internet Explorer 上使用大括号的 AngularJS 数据绑定问题

    我在这里做错了什么 我已经读过IE兼容性指南 http docs angularjs org guide ie但这没有提到使用 标签进行数据绑定 这在其他浏览器上工作正常 但在 IE 包括 IE9 中失败 http jsfiddle net
  • elm 中的类型继承

    我想要实现的是类型继承 我的意思是 我希望能够让函数返回 子类型 然后让函数返回 超类型 让我举一个例子 假设我有一个主视图组件 它返回一个 Html Msg view Model gt Html Msg view model div cl
  • Oracle 会淘汰 10gAS 转而采用 WebLogic 吗?

    Oracle 购买了 BEA 及其 WebLogic 工具套件 他们在自己的 10gAS 应用服务器中仍然有竞争产品 两者都是Java EE http en wikipedia org wiki Java Platform Enterpri
  • 如何以编程方式替换/更改图像按钮android

    我的视图上有一个图像按钮 我需要在用户交互后更改它 我没有找到类似的东西myImageButton setDrawable这是我想要更改的按钮的 xml
  • 如何使用 Gradle 创建发布签名的 apk 文件?

    我想让我的 Gradle 构建使用 Gradle 创建一个发布签名的 apk 文件 我不确定代码是否正确或者我在执行时是否缺少参数gradle build 这是我的一些代码build gradle build gradle kts file
  • 全二叉树的叶节点数

    Problem求一棵有 n 个节点的满二叉树的叶节点数 我为上述问题编写了一个递归程序 遍历树并在到达没有子节点的节点时增加叶节点的数量 但由于树是一个完整的二叉树 我认为这会让问题变得更容易 但我不知道如何解决 能否以紧凑的形式 类似于公
  • 如何确定我是否作为控制台应用程序运行? (Win32 上的德尔福)

    我有一个通用单元 可以将一些日志记录到 GExperts Debugger 和 或 OutputDebugString 我将在控制台应用程序中使用它 所以我希望它能够通过输出到标准输出writeln 主要可执行文件已经有 APPTYPE C
  • 如何将XAMPP中的phpMyAdmin升级到最新版本?

    如何在不影响数据库 设置和文件的情况下将XAMPP中的phpMyAdmin升级到最新版本 该网站将对您的目的有用 https www ostraining com blog coding update phpmyadmin https ww
  • 如何强制 Apache 使用最新安装的 PHP 版本

    我使用以下命令从 PHP 版本 5 5 9 1ubuntu4 17 升级到 PHP 5 6 23 1 deb sury org trusty 2 apt get y update add apt repository ppa ondrej
  • 如何使用包内 Excel 文件第一行中指定的列名称?

    谁能告诉我如何更改默认列名称 F1 F2 F3等 将数据从 Excel 源导入到 SSIS 2005 中的 OLEDB 目标时 示例 我的 Excel 电子表格中的数据如下所示 Title ProvinceID DistrictID Con
  • 调试 Windows 服务的更简单方法

    有没有比通过 Windows 服务控制管理器启动服务然后将调试器附加到线程更简单的方法来逐步执行代码 这有点麻烦 我想知道是否有更直接的方法 如果我想快速调试服务 我只需添加一个Debugger Break 在那里 当到达该线时 它会将我带
  • 如何使用ffmpeg的sws_scale()调整图片大小?

    我想使用 ffmpeg 的 func gt sws scale 来调整图片大小 有谁知道该怎么做吗 有这个函数的源码吗 首先你需要创建一个SwsContext 您只需执行一次 struct SwsContext resize resize
  • 暂停新的 BackGroundWorker 直到前一个完成

    我正在努力解决线程问题 问题是当我迭代 foreach 循环时 设置时this Document 应用程序执行登录 这是由事件触发的 需要几秒钟才能完成 在里面worker RunWorkerCompleted方法 我需要执行一些取决于当前
  • 如何在 SQLAlchemy 列/外键混合中指定 PostgreSQL 架构?

    现有的 PostgreSQL 数据库具有以不同 模式 组织的表 以分割大型数据库 既用于扩展 又在服务器级别实现微调的安全性 同样 declarative base 表描述被组织在包中的不同文件中 每个模式一个文件 package init
  • 类似 IOS 7 天气 APP 的过渡/动画

    我想实现iOS天气应用程序 如转换 ListView 点击列表项它会展开到详细视图 或者捏合列表也会展开到详细视图 左右滑动过渡 请让我知道如何实施 提前致谢 Here is 我在博客上找到的一些帖子 http www teehanlax
  • 如何使用scrapy将多个页面的数据收集到单个数据结构中

    我正在尝试从站点中抓取数据 数据被构造为多个对象 每个对象都有一组数据 例如 人员的姓名 年龄和职业 我的问题是这些数据在网站中分为两个级别 例如 第一页是姓名和年龄的列表 其中包含指向每个人的个人资料页面的链接 他们的个人资料页面列出了他
  • 如何知道 Visual Studio 中定义某个宏的位置

    我目前有一个使用 DirectX 的视觉工作室项目 代码中有一些宏 例如 range 0 m lBatchSize LONG m nBatched field ecount opt m lBatchSize IMediaSample m p
  • C++ 概念复合了需求和返回类型需求

    上次我将 C 概念与 GCC 和 fconcepts 标志一起使用时 以下代码片段曾经起作用 template
  • 从 MATLAB 中的文件读取图像

    我的计算机上的图像文件夹中有 bmp 图像 我把它命名为1 bmp to 100 bmp 我想像这样阅读这些图像 for i 1 100 s C images i bmp A imread s end 但是Matlab报错了 我怎样才能实现
  • java中hashcode方法的用途是什么? [复制]

    这个问题在这里已经有答案了 当我们有equals compareTo 方法 为什么有一个hashcode Java 中的方法 如果我们使用HashTable我们必须重写hashcode 方法 除了快速访问随机密钥之外还有什么特殊原因吗 如果