集合-字典(Lookup/SortedDictionary)
Lookup<TKey, TElement>非常类似于Dictionary<TKey, TValue>,但是把键映射在一个值集上。
必须调用ToLookup方法创建Lookup<TKey, TElement>对象。Lookup<TKey, TElement>对象是不可变的,无法向对象添加,移除元素。
- public class User
- {
- public string Address;
- public string Name;
- public int Age;
- }
- class Program
- {
- static void Main(string[] args)
- {
- List<User> users = new List<User> { new User{Address="bj",Name="rxm",Age=},
- new User{Address="bj",Name="cwr",Age=},
- new User{Address="sh",Name="zcl",Age=},
- new User{Address="zz",Name="hst",Age=}};
- Lookup<char, string> needUsers = (Lookup<char, string>)users.ToLookup(p => Convert.ToChar(p.Address.Substring(, )),
- p => p.Name + "-" + p.Age.ToString());
- foreach (IGrouping<char, string> item in needUsers)
- {
- Console.WriteLine(item.Key); //b s z
- foreach (string str in item)
- {
- Console.WriteLine(" {0}", str);
- }
- }
- //-----
- Console.WriteLine("--------------");
- IEnumerable<string> results = needUsers['b'];
- foreach (var item in results)
- {
- Console.WriteLine(item);
- }
- Console.Read();
- }
- }
SortedDictionary<Tkey,Tvalue>中的键都必须唯一。与这个Dictionary<Tkey,Tvalue>类不同的是,它排了序。
- SortedDictionary<string, string> items = new SortedDictionary<string, string>(StringComparer.CurrentCultureIgnoreCase);//忽略大小写
- items.Add("masanli", "逗你玩");
- items.Add("maji", "宇宙牌香烟");
- items.Add("liubaorui", "连升三级");
- items.Add("houbaolin", "北京话");
- foreach (KeyValuePair<string, string> item in items)
- {
- Console.WriteLine(string.Format("key:{0},value:{1}", item.Key, item.Value));
- }
集合-字典(Lookup/SortedDictionary)的更多相关文章
- Python集合&字典
Python集合&字典 @ 目录 字典 字典的几种定义方式 第一种 第二种 第三种 字典的一些基本操作 通过key得到value 增加字典键值对 删除字典键值对 格式化操作 清空字典 复制字典 ...
- 【python基础】之元组 集合 字典
元组 元组:元组和列表类似.但是元组中的元素是固定的(不能给一个元组添加,删除和替换元素以及重新排序) 1.创建元组 t1 = () #创建一个空元组 t2 = (1, 2, 3) t3 = tupl ...
- day11.1函数进阶 列表集合 字典中的函数变量,函数作为形参
函数进阶 1.函数作为变量 a=123 name="gao" nums=[1,2,3] data=nums#指向同一个内存地址 #查看内存地址篇章 def func(): prin ...
- Python入门 [输出,注释,列表,元祖,集合,字典,if,while,for]
print("Hello Python") #输出 ''' 多行注释 用 三个引号 ''' a=1 #赋值 变量首字母只能书字母下划线 第二个字符数字,字母,下划线 声明一个列表 ...
- Python集合字典运算符
1.集合2.字典3.运算符优先级 1.集合 创建:{} set([]) 注意:创建空的集合要用set() 特点:元素唯一,无序 运算: & 交集 | 并集 - 差集 方法: s ...
- python之字符串,列表,集合,字典方法
字典内置函数&方法 函数: 1.len(dict1):打印字典的键的个数 方法:dict1.( ) 2.clear():清空字典 3.copy():复制字典 4.fromkeys():使用指定 ...
- 集合-字典(Dictionary)
字典(散列表):允许按照某个键来访问元素,能根据键快速查找元素,也可以自由添加,删除元素.比较像List<T>类,但没有list向后移动元素的性能开销. .net中最主要的字典类是Dict ...
- Dictionary集合 字典
1 Dictionary<int, string> dic = new Dictionary<int, string>(); dic.Add(,"张三"); ...
- Python 基础补充(一) 列表、元组、集合、字典的区别和相互转换
一.列表.元组.集合.字典的区别 列表 元组 集合 字典 英文 list tuple set dict 可否读写 读写 只读 读写 读写 可否重复 是 是 否 是 存储方式 值 值 键(不能重复) ...
随机推荐
- 《JS权威指南学习总结--3.8类型转换》
JS数据类型转换方法主要有三种: 转换函数.强制类型转换.利用js变量弱类型转换. 一.转换函数 parseInt()和parseFloat()两个转换函数. ...
- spark开发
1. 主要参考资料http://spark.incubator.apache.org/docs/latest/scala-programming-guide.htmlhttp://www.eecs.b ...
- C++ 中 const和define的区别
来源网址:http://wujiangping.blog.163.com/blog/static/195182011201255115125205/ 请区别用#define命令定义的符号常量和用con ...
- ASP.NET MVC View向Controller提交数据
我们知道使用MVC的一个很重的的用途就是把Controller和View之间进行解耦,通过控制器来调用不同的视图,这就注定了Controller和View之间的传值是一个很重的知识点,这篇博文主要解释 ...
- 【超级干货】手机移动端WEB资源整合:转载
转载于:http://www.w3cfuns.com/notes/24611/fbba9cbd616e795360ea45515494aa53.html meta基础知识 H5页面窗口自动调整到设备宽 ...
- html css相对单位
p{ background:grey; color:white; font-size:0.5in; height:2em; width:50%; } height:2em意思就是屏幕上显示的的高度为字 ...
- mongostat
监控MongoDB有一下几种方法: 1)使用MongoDB软件包自带的工具,如mongostat,mongotop等.2)使用MongoDB数据库命令3)使用MongoDB公司提供的MMS监控服务 m ...
- Guava API
1.字符串的处理 字符串的连接&拆分&匹配及常用操作 Joiner&Splitter @Test public void testJoiner() { String[] str ...
- sql查询百分号的方法
select * from [tablename] where [col] like '%100/%%' escape '/'
- 【jsp】读取WebRoot下的图像文件
package readPic; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream ...