我在C#中有下一本字典
Dictionary<int, List<int>> dictionary = new Dictionary<int, List<int>>();
{1,1,2,3,4 2,4,5,6,7 3,1}
我想找到列表上只有一个元素的元素(最后在字典中)。 我该怎么办?
答案 0 :(得分:2)
编辑:
我刚刚意识到您想找到钥匙。
List<int> result = dictionary.Where(x => x.Value.Count == 1).Select(x => x.Key).ToList();
这应该是您正在寻找的那个
原始:
我相信您正在使用LINQ寻找这种东西:
IEnumerable<List<int>> result = dictionary.Values.Where(x => x.Count == 1);
如果您希望将其包含在列表中,我将考虑枚举集合。
List<List<int>> result = dictionary.Values.Where(x => x.Count == 1).ToList();
希望这能回答您的问题。
答案 1 :(得分:0)
这种方式:
Dictionary<int, List<int>> dictionary = new Dictionary<int, List<int>>();
List<KeyValuePair<int, List<int>>> result = dictionary.Where(keyValuePair => keyValuePair.Value.Count == 1).ToList();
发生了什么事?
dictionary.Where
|在dictionary
中搜索
keyValuePair =>
|一个KeyValuePair
,我将使用其名称keyValuePair
keyValuePair.Value
|其值(即List<int>
)
keyValuePair.Value.Count == 1
| Count
等于1
.ToList()
|然后返回包含匹配的KeyValuePairs