C# Dictionary通过value获取对应的key值[转发]

摘要:
1: 最直接的循环遍历方法可以分为两种形式:遍历键值对和所有键2.通过Linq查询(当然,在这里使用System.Linq添加相应的命名空间)。下面是一个非常简单的代码示例:privatevoidGetDicKeyByValue(){Dictionarydic=newDictionary();dic

1:最直白的循环遍历方法,可以分为遍历key--value键值对以及所有的key两种表现形式

2:用Linq的方式去查询(当然了这里要添加对应的命名空间 using System.Linq)

 如下为一个十分简单的代码示例:

private void GetDicKeyByValue()
        {
            Dictionary<string, string> dic = new Dictionary<string, string>();
            dic.Add("1", "1");
            dic.Add("2", "2");
            dic.Add("3", "2");
            //foreach KeyValuePair traversing
            foreach (KeyValuePair<string, string> kvp in dic)
            {
                if (kvp.Value.Equals("2"))
                { 
                    //...... kvp.Key;
                }
            }

            //foreach dic.Keys
            foreach (string key in dic.Keys)
            {
                if (dic[key].Equals("2"))
                { 
                    //...... key
                }
            }

            //Linq
            var keys = dic.Where(q => q.Value == "2").Select(q => q.Key);  //get all keys

            List<string> keyList = (from q in dic
                                    where q.Value == "2"
                                    select q.Key).ToList<string>(); //get all keys

            var firstKey = dic.FirstOrDefault(q => q.Value == "2").Key;  //get first key
        }

原文地址:http://www.cnblogs.com/mingmingruyuedlut/archive/2013/05/23/3067227.html

免责声明:文章转载自《C# Dictionary通过value获取对应的key值[转发]》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇使用.Net Memory Profiler 分析.Net程序内存泄露小波变换 C++ opencv 实现下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Objective-C学习--字符串

C语言将字符串作为简单地字符数组处理,并且在数组最后添加尾部零字符作为结束标志。而Cocoa中的NSString则有很多内置方法,他们让字符串的处理变得简单很多 1. 创建字符串    NSString的stringWithFormat:方法 +(id) stringWithFormat:(NSString *) format, ...;//省略号表示这个...

shell脚本中if的“-e,-d,-f”

文件表达式-e filename 如果 filename存在,则为真-d filename 如果 filename为目录,则为真-f filename 如果 filename为常规文件,则为真-L filename 如果 filename为符号链接,则为真-r filename 如果 filename可读,则为真-w filename 如果 filenam...

SpringBoot+ElementUI实现通用文件下载请求(全流程图文详细教程)

场景 在某些场景下需要前端浏览器从服务器端下载文件,比如需要下载导入Excel的模板。 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 既然是实现通用下载接口,就要实现在后端配置一个下载文件的路径,在前端进行下载请求时传递要下载的文件...

每个Web开发者都应该知道的关于URL编码的知识

  本文首先阐述了人们关于统一资源定位符(URL)编码的普遍的误读,其后通过阐明HTTP场景下的URL encoding 来引出我们经常遇到的问题及其解决方案。本文并不特定于某类编程语言,我们在Java环境下阐释问题,最后从Web应用的多个层次描述如何解决URL编码的问题来结尾。    简介   当我们每天上网冲浪时,有一些技术我们无时无刻不在面对。有数据...

Delphi写DLL要注意的问题 (转)

今天写一个dll准备给.net调用, dll写出之后给用delphi测试一下, 居然出错, 更别说给.net调用了.查来查去原来是参数和返回值使用string类型, 后面看了'Delphi 编写 DLL 返回字符串,.net 调用。' 这篇文章才解决, 顺便也收藏了一下,原来delphi写的dll有这么多限制的.   这一点我们需要注意  a. 参数和返回...

JDK自带方法实现AES对称加密

请看代码。 1 package jdbc.pro.lin; 2 3 import java.security.InvalidAlgorithmParameterException; 4 import java.security.InvalidKeyException; 5 import java.security.NoS...