hash & 0x7FFFFFFF

我查看了所有比较经典的常用哈希函数的实现,它们都使用了:
hash & 0x7FFFFFFF
一个对象的 HashCode可以为负数,这样操作后可以保证它为一个正整数
0x7FFFFFFF 二进制位 0111 1111 1111 1111 1111 1111 1111 1111
(hash & 0x7FFFFFFF) 将会得到一个正整数
因为你的hash是要作为数组的index的,这样可以避免出现下标为负数而出现异常

(全文完)

(转载本站文章请注明作者和出处 hash & 0x7FFFFFFF