最近在用HashTable时遇到个小问题:键值“正确”,取出对应的Item却是null
![](https://i-blog.csdnimg.cn/blog_migrate/d6fefb5337af43c70851c654067e6db8.gif)
开始总觉得奇怪,里面明明有对应的Item的,怎么取出来的却是null,最后看了一下参数,Key是object类型的,才搞明白。
public virtual
Add
Object
key,
Object
value)
索引中的key类型
Object
int key = 123
加入Item:table.Add(key, "hello")
取Item:table["123"] 为null
类型不一致当然取不出来了:key 为int ,"123"为string
表面上看好像是一样的,实则不同,所以当遇到参数类型为Object时,一定要注意它在运行时的实际类型
copyright:borbby