Dictionary集合运用
Dictionary基础定义:
- 从一组键(key)到一组值(value)的映射,每一个添加项都是由一个值及其相关联的键组成;
- 任何键都必须是唯一的;
- 键不能为空引用的null(VB中的Nothing),若值为引用类型,则可以为空;
- key 和value可以是任何类型(int,string,bool等);
Demo:key为int类型,值为string类型
初始化
Dictionary<int,string> dic=new Dictionary<int,string>();
添加元素
dic.Add(1,"C#");
dic.Add(2,"Java");
通过key查找元素
if(dic.ContainsKey(1))
{
key(主键)=1;
value(数据列)=dic[1];
}
通过keyValuePair遍历元素
foreach(keyValuePair<int,string>kvp in dic)
{
Console.WriteLine("key={0},value{1}",kvp.key,key.value);
key(主键)=kvp.key;
key(数据列)=kvp.value;
}
近遍历键keys属性
Dictionary<int,string>.keyConllection keycol=dic.keys;
foreach(int key in keycol)
{
key(主键)=key;
}
仅遍历values属性
Dictionary<int,string>.ValueConllection valcol=dic.values;
foreach(string value in valcol)
{
value(数据列值)=value;
}
通过Remove方法移除指定的键值
dic.Remove(1);
if(dic.ContainsKey(1))
{
key=1;
value=key[1]
}
else {
Console.WriteLine("不存在key:1");
}
Dictionary常用属性和方法:
- Comparer:获取用于确定字典中的键是否相等的IEqualityComparer;
- Count:获取包含在Dictionary中的键/值对的总数;
- Item:获取或设置与指定的键相关联的值;
- keys:获取包含Dictionary中键的集合;
- values:获取包含Dictionary中值的集合;
- Add:将指定的键和值添加到字典中;
- Clear:从Dictionary中移除所有的键和值;
- ContainsKey:确定Dictionary是否包含指定的键;
- ContainsValue:确定Dictionary是否包含特定值;
- GetEnumerator:返回循环访问Dictionary的枚举数;
- GetType:获取当前实例的type(从object继承);
- Remove:从Dictionary中移除所指定的键的值;
- Tostring:返回表示当前Object的string(从object继承);
- TryGetValue:获取与指定的键相关联的值;

Dictionary集合运用的更多相关文章
- C#Dictionary集合的使用
题目:输入一串字符串字母,比如:Welcome to China,比较每个字母出现的次数,不区分大小写. 解决这道题的方法很多.可能一百个人有一百个思路.当时第一眼看到这个题我的思路是:先将接受的一串 ...
- Collection was modified; enumeration operation may not execute Dictionary 集合已修改;可能无法执行枚举操作
public void ForeachDic() { Dictionary dic = new Dictionary(); dic.Add("1", 10); dic.Add(&q ...
- Dictionary集合 字典
1 Dictionary<int, string> dic = new Dictionary<int, string>(); dic.Add(,"张三"); ...
- C#泛型集合之Dictionary<k, v>使用技巧
1.要使用Dictionary集合,需要导入C#泛型命名空间 System.Collections.Generic(程序集:mscorlib) 2.描述 1).从一组键(Key)到一组值(Value) ...
- ASP.NET MVC中默认Model Binder绑定Action参数为List、Dictionary等集合的实例
在实际的ASP.NET mvc项目开发中,有时会遇到一个参数是一个List.Dictionary等集合类型的情况,默认的情况ASP.NET MVC框架是怎么为我们绑定ASP.NET MVC的Actio ...
- C#泛型集合—Dictionary<K,V>使用技巧
转载:http://blog.csdn.net/a125138/article/details/7742022 1.要使用Dictionary集合,需要导入C#泛型命名空间 System.Collec ...
- 转载C#泛型集合—Dictionary<K,V>使用技巧
1.要使用Dictionary集合,需要导入C#泛型命名空间 System.Collections.Generic(程序集:mscorlib) 2.描述 1).从一组键(Key)到一组值(Value) ...
- 使用Dictionary泛型集合封装业务逻辑判断 z
C#2.0 提供了Dictionary 泛型类,它提供了从一组键到一组值的映射.字典中的每个添加项都由一个值及其相关联的键组成.通过键来检索值的速度是非常快的,接近于 O(1),这是因为 Dictio ...
- 04.Dictionary字典键值对集合
Dictionary字典键值对集合和Hashtable键值对集合的功能非常类似, 只是在声明的时候,必须为其制定值的类型. 示例代码: namespace _11.Dictionary字典集合的学习 ...
随机推荐
- 人生苦短,我用Python——博客目录
计算机基础 计算机硬件基础知识 操作系统基础 Python基础 Windows环境下Python2和Python3的安装 交互式环境与变量的使用 简单介绍Python基本数据类型及程序交互 基本运算符 ...
- Matplotlib.pyplot 把画图保存为图片
在plt.show()之前执行plt.savefig()函数即可. 简单例子: import matplotlib.pyplot as plt x=[1,2,3,4,5] y=[10,5,15,10, ...
- python识别图片
import requestsfrom aip import AipOcr image = requests.get('https://static.pandateacher.com/7b5d6d8d ...
- echarts生成的图表大小怎么随屏幕的大小改变自适应
最近在做图表,记录一下用到的知识点,当做自己的日记吧,会不断添加新内容 1,echarts生成的图表大小怎么随屏幕的大小改变自适应? this.chart.setOption(this.options ...
- Android 简单记事本
写在前面 课程作业需要,于是忙活好几天抄了一个简单的记事本,使用已学内容包括Android UI布局,Activity的跳转,SQLite数据库. 开发环境:Android Studio 参考:htt ...
- RabbitMQ跟Redis做消息队列的区别
区别 https://www.zhihu.com/question/20795043 https://blog.csdn.net/dd18709200301/article/details/79077 ...
- PYTHON -- 基础3
1.数据类型 1.int 类型 用于计算 1.1 bit_length() 转换为2进制的最小位置 有效的 i = 5 print(i.bit_length()) i 二进制 i.bit_length ...
- java中全角半角字符的相互转换的代码
如下内容是关于java中全角半角字符的相互转换的内容.package com.whatycms.common.util; import org.apache.commons.lang.StringUt ...
- Python —— 函数高级特性(切片、迭代、列表生成式、生成器、迭代器)
一.切片(Slice) 在很多编程语言中,针对字符串提供了很多截取函数(i.e. substring),目的就是对字符串切片.python中没有针对字符串的截取函数,需要通过“切片”来完成. 取一个 ...
- GIS开发 图形常见算法
摘录:OSGeo中国中心 http://www.osgeo.cn/post/ae457 计算机的出现使得很多原本十分繁琐的工作得以大幅度简化,但是也有一些在人们直观看来很容易的问题却需要拿出一套并不简 ...