天刀书画坐标大全开封:哈希表奇怪问题!!!?

来源:百度文库 编辑:神马品牌网 时间:2024/05/04 05:26:07
创建了一个哈希表 public Hashtable hashtable=new Hashtable();

再创建一个自定义对像 public Reply reply=new Reply();

把对像序列化 byte[] temp=reply.Serialize();

从已序列化的字节数组中获得MD5哈希码 MD5 md5 = new MD5CryptoServiceProvider();
byte[] hashCode=md5.ComputeHash(temp);

以获得的哈希码为键把reply加入哈希表 hashtable.Add(hashCode,reply);

把存放哈希码的字节数组拷给另一个字节数组 byte[] tempCode=new byt[hashCode.Length];
for(int i=0;i<hashCode.Length;i++)
{tempCode[i]=hashCode[i];}

用新的这个字节数组来检索哈希表时出错: MessageBox.Show(hashtable[tempCode].GetType().ToString());

如果用原来那个字节数组来检索就可以: MessageBox.Show(hashtable[hashCode].GetType().ToString());

请问是为什么?键的对像必须是同一个对像吗?
如果是那哈希表的功能太受局限了吧?
如果不是那又是为什么?