48

String.hashCode() is plenty unique

5 years ago
ian $EOK_9P2OXt

http://sigpwned.com/2018/08/10/string-hashcode-is-plenty-unique/

I’ve been running across this article all over Reddit for the past couple of days.

It’s driving me crazy.

The article (rightfully) points out that Java’s humble String.hashCode() method — which maps arbitrary-length String objects to 32-bit int values — has collisions. The article also (wrongfully) makes this sound surprising, and claims that the String.hashCode() algorithm is bad on that basis. In the author’s own words:

No matter what hashing strategy is used, collisions are enevitable (sic) however some hashes are worse than others. You can expect String to be fairly poor.

String.hashCode() is plenty unique

Aug 11, 2018, 1:39pm UTC
http://sigpwned.com/2018/08/10/string-hashcode-is-plenty-unique/ >I’ve been running across this article all over Reddit for the past couple of days. >It’s driving me crazy. >The article (rightfully) points out that Java’s humble String.hashCode() method — which maps arbitrary-length String objects to 32-bit int values — has collisions. The article also (wrongfully) makes this sound surprising, and claims that the String.hashCode() algorithm is bad on that basis. In the author’s own words: >No matter what hashing strategy is used, collisions are enevitable (sic) however some hashes are worse than others. You can expect String to be fairly poor.