zoukankan      html  css  js  c++  java
  • C# Dictionary通过value获取对应的key值

    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
    }

    .....

  • 相关阅读:
    js的同步和异步
    事件三
    事件2
    JS作用域题
    游戏之乐
    NSTimer(2)
    NSTimer
    理解 Objective-C Runtime
    iOS系统安全机制概览
    Which is the best of GCD, NSThread or NSOperationQueue?
  • 原文地址:https://www.cnblogs.com/vipsoft/p/3998052.html
Copyright © 2011-2022 走看看