Я только заметил, что объекты HashTable имеют метод Contains и CotainsKey, с тем же описанием. Точно так же они просто синонимы или есть смешение за кулисами
.Net Hashtable - содержит vs ContainsKey
Ответ 1
Если вы просмотрите код Содержит с отражателем, вы увидите, что он напрямую вызывает ContainsKey.
ИЛ:
.method public hidebysig newslot virtual instance bool Contains(object key) cil managed
{
.maxstack 8
L_0000: ldarg.0
L_0001: ldarg.1
L_0002: callvirt instance bool System.Collections.Hashtable::ContainsKey(object)
L_0007: ret
}
Это переводит на следующий С#
public virtual bool Contains(object key)
{
return this.ContainsKey(key);
}
Ответ 2
Метод Contains
просто вызывает метод ContainsKey
внутри - вы можете проверить это, используя Reflector.
Ответ 3
Нет, они ведут себя точно так же