首页 >后端开发 >C++ >在 C# 中如何从字典键的值中检索它?

在 C# 中如何从字典键的值中检索它?

Barbara Streisand
Barbara Streisand原创
2024-12-29 00:41:10390浏览

How Can I Retrieve a Dictionary Key from Its Value in C#?

从字典的值中检索键

在 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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn