GetHashCode方法学习

Posted 阳光下的海啊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GetHashCode方法学习相关的知识,希望对你有一定的参考价值。

GetHashCode方法我的理解是做两个对象的比较,每个对象,不管是值类型还是应用类型都提供这个基本函数,都可以去重写它。GetHashTable通常用于HashTable、List<>、Dictionary等集合,如果两个集合返回的哈希码相同那么这两个集合不一定是同一个集合(也可能是两个相等的集合),但是如果两个集合返回的哈希码不同这两个集合就一定不是同一个集合(由于GetHashTable返回的哈希码为一个整数类型而且整数类型的容量是有限的,这样可能就会出现不同的对象使用GetHashTable方法会产生相同的哈希码,至于出现的几率有多大,就取决于使用的哈希函数了),GetHashCode返回的值也可以作为对象的索引(key),方便检索

其实我也不太清楚GetHashCode有什么用,感觉实际应用性和效率都不是很高,希望大家能给指点和补充一下!!!!

以上是关于GetHashCode方法学习的主要内容,如果未能解决你的问题,请参考以下文章

GetHashCode方法学习

GetHashCode()方法使用记录

重写类上的GetHashCode(),Equals()方法。

RuntimeHelpers.GetHashCode 有啥作用

覆盖 GetHashCode [重复]

实现 GetHashCode [重复]