【发布时间】:2020-07-27 08:05:06
【问题描述】:
我正在实施GetHashCode()。我想将名为string Id 的属性中的值相加,然后除以
通过一些常数并返回结果。我正在使用GetNumericValue():
int sum = 0;
foreach (var ch in Id)
sum += char.GetNumericValue(ch);
但似乎GetNumericValue 返回double。可以转换成int吗?
我以为Unicode字符是用整数表示的,为什么会返回double?
并且可以忽略它吗?
【问题讨论】:
-
您似乎不明白
GetNumericValue的作用。与其尝试继续使用它,不如说明您打算如何使用ch,我们可以建议一个合适的方法。 -
为什么要为字符串实现不同的哈希码?为什么不只是
Id.GetHashCode()?
标签: c# unicode char gethashcode