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

 更新时间:2015年09月05日 15:15:56   作者:divor  
这篇文章主要介绍了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.jb51.net </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语句来查找字典中的重复值,大家可以尝试实验一下。

相关文章

  • C# readnodefile()不能读取带有文件名为汉字的osg文件解决方法

    C# readnodefile()不能读取带有文件名为汉字的osg文件解决方法

    这篇文章主要介绍了C# readnodefile()不能读取带有文件名为汉字的osg文件解决方法,需要的朋友可以参考下
    2015-09-09
  • 深入解析:打造自动消失的对话框

    深入解析:打造自动消失的对话框

    本篇文章是对打造自动消失的对话框进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C#使用SqlBulkCopy批量复制数据到数据表

    C#使用SqlBulkCopy批量复制数据到数据表

    这篇文章主要介绍了C#使用SqlBulkCopy批量复制数据到数据表的方法,较为详细的讲述了SqlBulkCopy批量复制数据到数据表的原理与实现技巧,需要的朋友可以参考下
    2014-10-10
  • c#使用IAsyncEnumerable实现流式分段传输

    c#使用IAsyncEnumerable实现流式分段传输

    这篇文章主要为大家详细介绍了c#如何使用IAsyncEnumerable实现流式分段传输,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-10-10
  • WPF通过线程使用ProcessBar的方法详解

    WPF通过线程使用ProcessBar的方法详解

    这篇文章主要给大家介绍了关于WPF通过线程使用ProcessBar的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用WPF具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • C#编写的艺术字类实例代码

    C#编写的艺术字类实例代码

    本文给大家分享使用纯C#编写的艺术字类实例代码,代码简单易懂,需要的朋友参考下本教程
    2016-03-03
  • C# 8.0新特性介绍

    C# 8.0新特性介绍

    C# 语言是在2000发布的,至今已正式发布了7个版本,每个版本都包含了许多令人兴奋的新特性和功能更新。下面通过本文给大家分享下C# 8.0的三个令人兴奋的新特性,需要的朋友参考下吧
    2017-10-10
  • 浅谈C#中堆和栈的区别(附上图解)

    浅谈C#中堆和栈的区别(附上图解)

    C#中栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义;堆是程序运行期间动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小
    2014-09-09
  • C#中Equals和GetHashCode使用及区别

    C#中Equals和GetHashCode使用及区别

    这篇文章主要介绍了C#中Equals和GetHashCode使用及区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • C#实现拼手气红包算法

    C#实现拼手气红包算法

    这篇文章主要为大家详细介绍了C#实现拼手气红包算法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09

最新评论