C#中查找Dictionary中的重复值的方法

在这篇帮助文档中,我将向你展示如何实现c#里字典中重复值的查找。你知道的对于一个老鸟来说,这是非常简单的代码。但是尽管如此,这也是一篇对c#初学者非常有用的帮助文档。
背景:多数程序员对小型数据源存储的处理方式通常是创建字典进行键值存储。主键时唯一的,但是字典值却可能有重复的元素。
代码如下

//initialize a dictionary with keys and values.  
Dictionary<int, string> plants = new Dictionary<int, string>() {  
  {1,"Speckled Alder"},  
  {2,"Apple of Sodom"},  
  {3,"Hairy Bittercress"},  
  {4,"Pennsylvania Blackberry"},  
  {5,"Apple of Sodom"},  
  {6,"Water Birch"},  
  {7,"Meadow Cabbage"},  
  {8,"Water Birch"}  
}; 
  
Response.Write("<b>dictionary elements........ www.nhooo.com </b><br />");
     
//loop dictionary all elements  
foreach (KeyValuePair<int, string> pair in plants) 
{
  Response.Write(pair.Key + "....."+ pair.Value+"<br />");
} 
  
//find dictionary duplicate values. 
var duplicateValues = plants.GroupBy(x => x.Value).Where(x => x.Count() > 1);
 
Response.Write("<br /><b>dictionary duplicate values..........</b><br />");
 
//loop dictionary duplicate values only      
foreach(var item in duplicateValues) 
{
  Response.Write(item.Key+"<br />");
}

 以上就是我使用一个简单的LINQ语句来查找字典中的重复值,大家可以尝试实验一下。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。