从字典的值中检索键
在 C# 中,可以通过几种方法来识别字典中某个值对应的键。字典中键的自然唯一性妨碍了通过值直接检索键。
使用 FirstOrDefault()
由于字典值本质上不是唯一的,因此搜索操作需要找到所需的密钥。通过利用 FirstOrDefault(),我们可以搜索值与输入匹配的键值对并返回其键:
var myKey = types.FirstOrDefault(x => x.Value == "one").Key;
创建逆向字典
适用于值唯一且不经常插入的情况的另一种解决方案是构造逆字典。在这种方法中,值充当键,键充当值:
var inverseTypes = types.ToDictionary(x => x.Value, x => x.Key); var myKey = inverseTypes["one"];
虽然 HashTable 或 SortedList 提供替代数据结构,但它们通常不提供按值检索键的本机解决方案。上述方法在大多数情况下仍然有效且高效。
以上是在 C# 中如何从字典键的值中检索它?的详细内容。更多信息请关注PHP中文网其他相关文章!