如何在元素添加到哈希表后生成哈希码?

时间:2016-06-23 20:44:40

标签: c# .net hashtable

我有一个哈希表,我在密钥中添加了一个List作为键。

如何返回从List转换的哈希码?

我是否可以从生成的哈希码中汇编出哈希表中的List对象元素?

感谢

2 个答案:

答案 0 :(得分:3)

  

如何返回从List转换的哈希码?

在列表中调用GetHashCode。

  

我是否可以从生成的哈希码中汇编出哈希表中的List对象元素?

不。只有40亿个可能的哈希码,但显然有很多可能的列表。因此,无法从哈希代码转到列表。

答案 1 :(得分:0)

为了获取您在List<T>中使用的HashTable对象的哈希码(根据我的理解,您使用的是key)。您可以调用GetHashCode()对象上的List<T>函数,并从中检索哈希码。

要回答您的其他问题,不,您无法从其哈希码重建对象。但是,可以,通过哈希码检查两个对象是否相同。想象一下像签名一样的哈希码。您(通常)可以验证两个签名来自同一个人(当然,两个人可能有相同的签名,这些签名称为collisions)但是,您无法根据他们重新创建一个人签名。