我尝试了一批随机字符串,我得到的所有值都是正数,但我想知道:
String.GetHashCode()
会返回否定值还是0?
由于返回值是 int ,所以我猜它可能是,所以如果是这种情况,我必须改变我的逻辑。
如果您有答案或有官方消息来源,请分享
答案 0 :(得分:24)
是的,它可以返回负值。
您不得拥有符合GetHashCode()
值的逻辑
GetHashCode()
不保证是唯一的,可以在构建之间进行更改。
GetHashCode()
必须被视为不透明的标记,可以与其他哈希组合或修改为哈希表。
答案 1 :(得分:6)