微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 搜索字典值并返回满足条件的键列表

我在搜索字典时遇到了问题.
Dictionary<string,string[]> dic = new Dictionary<string,string[]>(){
    {"a",new string[](){"a_val","2"}},{"b",new string[](){"b_val","1"}},"0"}}
};

我需要返回一个键列表,其中stingArray [1]元素的值大于“1”,如:

List<string> list = new List<string>{
    "a"
};

因为我并不擅长使用LINQ,所以我目前的解决方案是遍历Dictionary并将键添加到新列表中.但是这种方法看起来很丑陋,我正试图找到问题的另一种解决方案.

解决方法

没有任何错误处理:
var list = dic.Where(x => int.Parse(x.Value[1]) > 1)
              .Select(x => x.Key)
              .ToList();

使用Where语句,将过滤Value [1]大于1的条目,并使用Select语句选择此条目中的键.至少使用ToList方法在List中转换该集合.

有关详细信息,请查看101 LINQ Samples in C#

原文地址:https://www.jb51.cc/csharp/98633.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐