我有一个类,其内部只是一个整数数组。一旦构造完毕,数组就永远不会改变。我想预先计算一个好的哈希码,以便该类可以非常有效地用作字典中的键。数组的长度大约在30项以内,整数一般在-1000到1000之间。
不是很聪明,但足以满足大多数实际目的:
编辑:由于 Henk Holterman 的评论而更改,谢谢。
int hc = array.Length;
foreach (int val in array)
{
hc = unchecked(hc * 314159 + val);
}
如果您需要更复杂的东西,看这里.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)