日期:2014-05-17  浏览次数:21021 次

object的GetHashCode()返回的的哈希码,可以用来查找object吗?
例如,我用一个Array来保存一些Object返回的HashCode,如果这些object声明周期还没有结束的话,我能否用这些哈希值来找到这些object?

如果能的话,如何查找呢? 谢谢。

------解决方案--------------------
为什么不用Dictionary<key,value>呢
------解决方案--------------------
没有,而且这个hashcode是由用户来维护的
------解决方案--------------------
Object[] objContainer = 。。。

人家这个Object[]里面本来就和你数组一样保存了对象,干嘛还要用一个数组保存HashCode???

提出这样的问题,只能证明你连基础类型都不懂。
------解决方案--------------------
靠,你懂不懂哈希算法的作用?

哈希算法是用来快速定位对象位置的。

在.net的所有集合类里, 几乎都用到GetHashCode用来查找对象。
------解决方案--------------------

------解决方案--------------------
引用:
Quote: 引用:

没有,而且这个hashcode是由用户来维护的


对象的引用本身在.net framework里面是唯一的对吧,也就是数据字典可以用object本身来当key?
如果是这样的话,GetHashCode()就没有存在的价值了,因为引用本身就是一个唯一值啊?

谢谢。


看下面的备注
http://msdn.microsoft.com/zh-cn/library/system.object.gethashcode.aspx