hashcode相关内容

可变的hashmap键是一种危险的做法吗?

使用可变对象作为Hashmap键是不好的做法吗?如果您尝试使用已修改足以更改其哈希码的密钥从Hashmap中检索值,会发生什么情况?例如,给定 class Key { int a; //可变字段 int b; //可变字段 public int hashcode() return foo(a,b); } 包含代码 HashMap ..
发布时间:2018-06-01 15:12:57 其他开发

hashCode方法的最佳实现

我们如何确定集合的最佳实现(code> hashCode()方法(假设equals方法已被正确覆盖)? 解决方案 最佳实施?这是一个很难回答的问题,因为它取决于使用模式。 几乎所有情况下,合理的良好实现都在 Josh Bloch 的项目8(第二版)中的 有效Java 。最好的办法是在那里查找,因为作者解释了为什么这种方法很好。 短版 创建 int结果并指定一个非零值值。 ..
发布时间:2018-06-01 15:12:37 Java开发

我怎样才能生成MD5哈希?

是否有任何方法在Java中生成一个字符串的MD5散列? 解决方案 java.security.MessageDigest 是你的朋友。致电 getInstance(“MD5”) 以获得您可以使用的MD5消息摘要。 ..
发布时间:2018-06-01 15:12:24 Java开发

Google App Engine,JDO和equals / hashCode

我在Google App Engine中有一个应用程序正常工作。我意识到,我忘了实现equals和hashCode(我需要使用集合中的对象)的JDO增强对象。所以我做了。我在这些实现中并没有做任何特别的事情,实际上我只是使用Eclipse来生成它们。像这样: @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDEN ..
发布时间:2018-05-03 18:30:30 Java开发

如果Java的垃圾收集器移动对象,什么是Object.hashCode和System.identityHashCode?

我经常听说这些方法( Object.hashCode 和 System.identityHashCode )返回地址对象,或从地址中快速计算出来的东西;但我也很确定垃圾收集器移动并压缩对象。由于哈希码不能改变,所以会出现问题。我知道这不是日常工作中需要知道的,但我想了解内部。那么,有没有人知道这是如何在Java中实现的?或.NET,因为它们可能是相似的。 解决方案 .NET的实现是故意不发 ..

有没有一种方法来得到一个与epsilon的float的哈希码?

众所周知,用==比较浮点数通常是一个错误。在我写的一个3D向量类(带有浮点部分X,Y,Z)中,如果两个向量的距离被认为是零,那么两个向量被认为是相等的。 return false; code> public override bool Equals(object obj) { if(obj == null) $( ) if(GetType()!= obj.GetType()){ ..
发布时间:2017-12-21 21:21:00 其他开发

为什么只有160位的SHA-1哈希40个字符长?

问题的标题全部说明了。我一直在研究SHA-1,大多数地方我看到它是40 Hex字符长,对我来说是640bit。它不能被代表只有10位十六进制字符160位= 20字节。一个十六进制字符可以代表2个字节吗?为什么它需要两倍?我在理解中缺少什么 如果使用Base32或Base36,SHA-1是不是只有5个或更少的字符? 解决方案 一个十六进制字符只能表示16个不同的值,即4位。 (16 = ..
发布时间:2017-08-16 20:54:55 开发方法

Eclipse生成的Hashcode

在这里我已经阅读了几个有关哈希码实现的答案和使用XOR运算符的建议。 (例如为什么XOR经常在java hashCode()中使用,但是另一个按位运算符很少使用?)。 当我使用Eclipse生成哈希码函数时,其中字段是一个对象, timestamp 一长,输出为: public int hashCode(){ final int prime = 31; int result = ..
发布时间:2017-07-28 19:46:34 Java开发

如何自定义由Eclipse生成的hashCode()和equals()?

建议有时需要表示值(值类)的类覆盖 hashCode(), equals() [和可选的 toString()]方法。 这些方法返回的值取决于类的所有成员变量或其子类的超类。要正确实现它们,你必须了解一些关于哈希哈希的理论和一点代数和集合理论(不是太多,几乎所有的东西都在解释在 javadocs 在大多数情况下,这种方法的实现遵循一个模板,IDE(如Eclipse JDT)包括生成它们的工 ..
发布时间:2017-07-27 04:49:51 Java开发

在Java中打破了一倍

我想知道如何在Java中哈希一个双引号?我已经混合了其他原始数据和对象。我以为可以使用hashcode方法?从我看过的这个看起来相当复杂。我遇到了一些关于创造种子的事情。 我想知道有关如何解决这个问题的任何想法。希望放弃我的哈希码的其余部分,这个类有两个? 我想知道是否有问题,我试图排列数组列表,数组和其他java中的对象我的一些类包含数组列表。 非常感谢 解决方案 a ..
发布时间:2017-07-12 00:13:38 Java开发

将对象添加到字典...但测试部分唯一性

我有以下对象,如果有重复,我想要一个字典有条件地确定。例如,在一本字典中,我只关心两个属性对于我的密钥是唯一的。在第二个字典中,我希望所有的属性都是唯一的密钥。 问题1: 我应该覆盖什么接口来完成这个? (例如GetHashCode,IEqualityComparer,equals运算符) 问题2: 如果我更改最终更改键值的属性,我该怎么办?如果我做一个字典,这可能更有用, ..
发布时间:2017-05-24 21:15:05 C#/.NET

字典是破坏还是应该GetHashCode()只是基于不可变的成员?

将对象添加到.NET System.Collections.Generic.Dictionary 类的密钥的哈希码在内部存储并用于以后的比较。当哈希码在初始插入字典之后变化时,通常会变得“不可访问”,并且即使使用相同的引用返回false(存在下面的示例代码),存在检查也可能使用户感到惊讶。 GetHashCode 文档说: 只要对确定返回的对象状态没有修改,对象的GetHashCode ..
发布时间:2017-05-21 21:24:20 C#/.NET

在HashMap中使用String键的错误想法?

我知道String类' hashCode()方法是不保证为不同的String-s生成唯一的哈希码。我看到很多使用将String键放入HashMap-s(使用默认的String hashCode()方法)。如果地图 put 将以前放置到地图上的HashMap条目与真正不同的字符串关键字置换,很多此类用法可能会导致重大的应用程序问题。 在String.hashCode()返回不同的String- ..
发布时间:2017-05-21 16:07:42 Java开发

Java在HashMap或HashTable中如何订购项目?

我想知道Java如何在 Map ( HashMap 或 Hashtable )。密钥是由哈希码,内存引用或分配优先级排序的吗?? 这是因为我在地图中注意到相同的对并不总是相同的顺序 解决方案 java.util.HashMap 是无序的;你不能也不应该承担任何事情。 这个类不能保证地图的顺序;特别是,它不能保证订单在一段时间内保持不变。 java.util.LinkedH ..
发布时间:2017-05-21 14:43:17 Java开发

实现__hash __()的正确和好办法是什么?

实现 __ hash __()? 我正在谈论的功能是什么?返回一个哈希码,然后用于将对象插入散列哈希表字典中。 As __ hash __()返回一个整数并且用于将对象“binning”到散列表中我假定返回的整数的值应该为普通数据均匀分布(以最小化冲突)。 得到这样的价值是什么好习惯?碰撞有问题吗? 在我的情况下,我有一个小类,作为一个容器类,它持有一些int,一些浮点和一个字符串 ..
发布时间:2017-05-21 14:30:05 Python

为什么哈希图比Trie地图好?

通过trie map我的意思是一个关联数组,其中有效负载存储在特里中,而不是哈希表。 当我使用散列图/表时,我使用的键通常是字符串。一些基于地图的地图上的哈希映射有什么优点?我已经读到一个哈希映射更快 - 但是在我看来,一致的哈希函数将必须检查(char)数组的每个元素的最终哈希 - 迭代数组一次。在一个特里,你将同样必须遍历数组一次。 在我看来,当编码小对象时,这会使用更多的内存(即 ..
发布时间:2017-04-03 14:24:46 其他开发

一种空间有效的数据结构,用于存储和查找大量(均匀分布)整数

我被要求在内存中查找一百万个均匀分布的整数。 我的工作负载非常仔细。 我目前的实现使用了一个HashSet(Java)。我看到很好的查找性能,但内存使用情况并不理想(几十MB)。 你能想到一个更有效(内存)的数据结构吗? > 编辑:解决方案需要支持少量的数据结构添加。 背景: / strong> 上面提到的整数问题是简化以下问题: 我有一套一百万个字符串(我的“字 ..
发布时间:2017-04-03 12:32:09 Java开发