C++ 中的 HashCodeBuilder
如果我想在 Java 中为给定对象生成哈希,我知道的最简单的方法是使用 Apache Commons HashCodeBuilder: public class Person { String name int age …
在 C# 中创建 GetHashCode 方法
在 C# 中为类创建自己的 GetHashCode 方法的最佳方法是什么? 假设我有一个简单的类(它重写了 Equals 方法),如下所示: class Test { public strin…
HashMap 中的 Double
我正在考虑使用 Double 作为 HashMap 的键,但我知道浮点比较是不安全的,这让我开始思考。 Double 类上的 equals 方法也不安全吗? 如果是,则意味着…
是否可以组合私有成员的哈希码来生成新的哈希码?
我有一个对象,我想为其生成唯一的哈希值(覆盖 GetHashCode()),但我想避免溢出或不可预测的情况。 该代码应该是组合一小部分字符串的哈希码的结果…
C# 中枚举的数据结构,其中查找通常基于所存储对象的一个属性
我想知道人们会推荐什么数据结构来执行以下操作。 我有一个类,它具有三个主要属性,例如。 public class Example { public Object One { get } publi…
证明:为什么 java.lang.String.hashCode() 的实现与其文档相符?
java 的 JDK 文档.lang.String.hashCode()著名说: 字符串对象的哈希码计算如下 s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1] 使用int算术,其中s[i…
Java 字符串上 hashCode() 的一致性
Java 字符串的 hashCode 值计算如下 (String.hashCode()): s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1] 是否存在任何情况(例如 JVM 版本、供应商…
php 和 c# 中的 hmac_sha256 不同
这是我的 PHP 代码: hash_hmac( "sha256", utf8_encode( $filename ), utf8_encode( $password ) ) 这是我的 C# 代码: var hmacsha256 = new HMACSH…
GetHashCode扩展方法
在阅读了 StackOverflow 上有关重写 GetHashCode() 的所有问题和答案后,我编写了以下扩展方法,以便轻松方便地重写 GetHashCode():( public static…
为什么各种项目的下载都有哈希码或校验和?
从 Internet 下载各种可执行文件或 zip 文件时,我从未使用过校验和。 我知道它用于检查一致性并增加一点安全性。 但是,当您从 Apache 或 Microsoft …
GetHashCode 覆盖包含通用数组的对象
我有一个包含以下两个属性的类: public int Id { get private set } public T[] Values { get private set } 我已将其设为 IEquatable 并重写 object…