Dictionary集合

简介:

Dictionary<string, string>是一个泛型集合,他本身有集合的功能有时候可以把它看成数组,

他的结构是这样的:Dictionary<[key], [value]> 

他的特点是存入对象是需要与[key]值一一对应的存入该泛型,通过某一个一定的[key]去找到对应的值。

直接看代码:

using System; using System.Collections.Generic; using System.Text; using System.Linq; namespace DictionarySorting { class Program { static void Main(string[] args) { Dictionary<int, string> dic = new Dictionary<int, string>(); dic.Add(1, "HaHa"); dic.Add(5, "HoHo"); dic.Add(3, "HeHe"); dic.Add(2, "HiHi"); dic.Add(4, "HuHu"); var result = from pair in dic orderby pair.Key select pair; foreach (KeyValuePair<int, string> pair in result) { Console.WriteLine("Key:{0}, Value:{1}", pair.Key, pair.Value); } Console.ReadKey(); } } }

Dictionary的基本用法:

假如需求:现在要导入一批数据,这些数据中有一个称为公司的字段是我们数据库里已经存在了的,目前我们需要把每个公司名字转为ID后才存入数据库。

分析:每导一笔记录的时候,就把要把公司的名字转为公司的ID,这个不应该每次都查询一下数据库的,因为这太耗数据库的性能了。

解决方案:在业务层里先把所有的公司名称及相应的公司ID一次性读取出来,然后存放到一个Key和Value的键值对里,然后实现只要把一个公司的名字传进去,就可以得到此公司相应的公司ID,就像查字典一样。对,我们可以使用字典Dictionary操作这些数据。

示例:SetKeyValue()方法相应于从数据库里读取到了公司信息。 

 

/// <summary> /// 定义Key为string类型,Value为int类型的一个Dictionary /// </summary> /// <returns></returns> protected Dictionary<string, int> SetKeyValue() { Dictionary<string, int> dic = new Dictionary<string, int>(); dic.Add("公司1", 1); dic.Add("公司2", 2); dic.Add("公司3", 3); dic.Add("公司4", 4); return dic; } /// <summary> /// 得到根据指定的Key行到Value /// </summary> protected void GetKeyValue() { Dictionary<string, int> myDictionary = SetKeyValue(); //测试得到公司2的值 int directorValue = myDictionary["公司2"]; Response.Write("公司2的value是:" + directorValue.ToString()); }

目录
相关文章
|
10月前
|
存储 安全 搜索推荐
c#集合_键值对Dictionary & SortedList
在 C# 中,键值对是一种常见的数据结构,可以使用不同的集合类实现。以下是常用的键值对集合类::一种使用哈希表实现的键值对集合。它通过将键哈希为桶号,然后将值存储在桶中进行快速查找。:一种基于数组实现的键值对集合。它会将键值对按照键排序并存储在数组中,以支持快速访问、查找和枚举。:一种使用红黑树实现的键值对集合。它能够按照键的排序进行快速查找,也可以快速地插入和删除键值对,并且该树具备自平衡的特性,使得插入、删除和搜索性能都非常优秀。
116 1
|
11月前
|
存储 索引 Python
python-tuple(元组)-set(集合)-list(列表)-dictionary(字典)和Python数据类型转换函数
python-tuple(元组)-set(集合)-list(列表)-dictionary(字典)和Python数据类型转换函数
|
4月前
|
存储 Swift
在Swift编程语言中,字典(Dictionary)
在Swift编程语言中,字典(Dictionary)
64 3
|
11月前
|
存储 Java Python
多重字典(Multi-Level Dictionary)
多重字典(Multi-Level Dictionary)是一种将多个字典组合在一起的数据结构,用于解决需要在多个维度上查找数据的问题。多重字典可以看作是一个嵌套的字典,每个字典都可以作为其他字典的键。 使用多重字典的场景:
129 3
|
4月前
|
存储 缓存 数据库连接
Python基础教程——字典(Dictionary)
Python基础教程——字典(Dictionary)
|
3月前
|
存储 Python 容器
|
3月前
|
Python 存储 容器
Python 字典(Dictionary)
Python 字典(Dictionary)