C#中字典Dictionary的用法详解

简介: C#中字典Dictionary的用法详解

前言:每日记录自己学习C#的心得和体会,小弟才疏学浅,如有错误的地方,欢迎大佬们指正,感谢~


1.字典的类型

public class userscore

{

   public List<string> fen; //分数

   public List<string> time; //时间

}

 public Dictionary<string, userscore> DicScore = new Dictionary<string, userscore>(); //账户 分数


2.根据字典的值取字典的键


/// <summary>

   /// 根据字典的值取字典的键

   /// </summary>

   /// <param name="str">字典的键</param>

   /// <returns>字典键的值</returns>

   public string Dictionary_Key(string str)

   {

       string strr = "";

       //BaoCunScoreTime.instance.DicScore 是字典

       foreach (var item in BaoCunScoreTime.instance.DicScore)

       {

           foreach (var itrr in item.Value.fen)

           {

               //判断字典里有没有这个分数(字典的值),有了返回出来

               if (itrr.Equals (str))

               {

                   strr= item.Key;                    

               }

           }

       }

       return strr;

   }


3.根据字典的键取字典的值

//返回账户分数的最大值

   /// <summary>

   /// 根据字典的键取字典的值

   /// </summary>

   /// <param name="str">字典的键</param>

   /// <returns>字典里最大分值</returns>

   public string  FanhuiZuiDaZhi(string str)

   {

       List<int> liststr = new List<int>();

       //因为分数有很多,需要找到最大的一个

       foreach (var item in BaoCunScoreTime.instance.DicScore[str].fen)

       {          

           liststr.Add(int.Parse(item));

       }

       int sun=0;

       foreach (var item in liststr)

       {

           if (item >sun)

           {

               sun = item;

           }

       }        

       return sun.ToString ();

   }

4. 根据字典键确定 值中最高分的时间

//根据字典键确定 值中最高分的时间

   public string ScoreZuiDaZhiTime(string str)

   {

       List<int> liststr = new List<int>();

       List<string> liststring = new List<string>();

       foreach (var item in BaoCunScoreTime.instance.DicScore[str].fen)

       {

           liststr.Add(int.Parse(item));

       }

       foreach (var item in BaoCunScoreTime.instance.DicScore[str].time)

       {

           liststring.Add(item);

       }

       int sun = 0;

       foreach (var item in liststr)

       {

           if (item > sun)

           {

               sun = item;

           }

       }

       string suning="";

       for (int i = 0; i < liststr.Count; i++)

       {

           if (liststr [i]==sun)

           {

               suning = liststring[i];

           }

       }

       return suning;

   }


/// <summary>

   /// 根据键返回字典的值

   /// </summary>

   /// <param name="dicdata">字典</param>

   /// <param name="Key_">键</param>

   /// <returns></returns>

   public GameObject GetDicValue(Dictionary<Transform, GameObject> dicdata, Transform Key_)

   {

       GameObject trans = null;

       if (dicdata.ContainsKey(Key_))

       {

           trans = dicdata[Key_];

       }

       return trans;

   }

   /// <summary>

   /// 根据值返回字典的键

   /// </summary>

   /// <param name="dicdata">字典</param>

   /// <param name="value_">值</param>

   /// <returns></returns>

   public Transform GetDicKey(Dictionary<Transform, GameObject> dicdata,GameObject value_)

   {

       Transform trans = null;

       if (dicdata.ContainsValue(value_))

       {

           foreach (var item in dicdata)

           {

               if (item.Value.Equals(value_))

               {

                   trans = item.Key;

               }

           }

       }

       return trans;

   }

相关文章
|
安全 C#
C# List基本用法
C# List基本用法
|
8月前
|
存储 监控 算法
解析公司屏幕监控软件中 C# 字典算法的数据管理效能与优化策略
数字化办公的时代背景下,企业为维护信息安全并提升管理效能,公司屏幕监控软件的应用日益普及。此软件犹如企业网络的 “数字卫士”,持续记录员工电脑屏幕的操作动态。然而,伴随数据量的持续增长,如何高效管理这些监控数据成为关键议题。C# 中的字典(Dictionary)数据结构,以其独特的键值对存储模式和高效的操作性能,为公司屏幕监控软件的数据管理提供了有力支持。下文将深入探究其原理与应用。
202 4
|
10月前
|
存储 API C#
C#之 Dictionary 详解
C#之 Dictionary 详解
230 3
|
11月前
|
C#
C# Hashtable的用法
哈希表(HashTable)是一种通过键值对直接访问的数据结构。Add 方法用于添加成员,先检查成员是否已存在,若不存在则计算其 ASCII 码值作为散列值并添加到表中。Remove 方法用于移除成员,Size 方法返回集合成员数量。代码实现了这些功能,确保集合操作的高效性。
|
存储 缓存 数据库连接
Python基础教程——字典(Dictionary)
Python基础教程——字典(Dictionary)
|
C#
c#中switch case语句的用法
C#中的 `switch case`语句提供了一种简洁而高效的方式来处理多个条件分支。通过了解其基本语法、注意事项和高级用法,可以在实际开发中灵活运用 `switch case`,提高代码的可读性和维护性。希望本文能帮助你更好地理解和使用C#中的 `switch case`语句。
1171 0
|
Python 存储 容器
Python 字典(Dictionary)
Python 字典(Dictionary)
|
开发者 Python
【Python 基础】递推式构造字典(dictionary comprehension)
【5月更文挑战第8天】【Python 基础】递推式构造字典(dictionary comprehension)

热门文章

最新文章