【发布时间】:2017-01-22 15:29:56
【问题描述】:
我正在寻找在 Java 中为给定字符串计算唯一哈希的方法。看起来我不能使用 MD5 或 SHA1,因为人们声称它们已损坏并且并不总是保证唯一性。
对于equals() 方法相等的两个 String 对象,我应该得到相同的哈希值(最好是 32 个字符的字符串,如 MD5 Sum)。并且没有其他 String 应该生成这个哈希 - 这是棘手的部分。
有没有办法在 Java 中实现这一点?
【问题讨论】:
-
您将总是在某些值之间发生冲突。
Strings 比Strings 的 32 个字符多。 -
没错!理论上是不可能的。谢谢!