欢迎来到天天文库
浏览记录
ID:50318406
大小:727.50 KB
页数:29页
时间:2020-03-08
《C#程序设计及应用教程 第3版 十二五 普通高等教育本科国家级规划教材 教学课件 作者 马骏 第5章 泛型与LINQ.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、教育部普通高等教育十二五国家级规划教材《C#程序设计及应用教程》第3版(包括简化版:《C#程序设计教程》第3版)第5章泛型与LINQ2Ch5泛型与LINQ5.1C#的类型扩展5.2泛型和泛型集合5.3LINQ查询表达式5.4Lambda表达式5.5LINQtoObjects35.1C#的类型扩展C#提供了一些非常实用的类型扩展功能。匿名类型和隐式类型的局部变量。对象初始化和集合初始化匿名类型和隐式类型的局部变量匿名类型将一组只读属性封装到单个对象中,而无需首先显式定义一个类型。“字段”不能使用va
2、r来声明。用var声明的“局部变量”不能为null。45.1C#的类型扩展对象初始化和集合初始化在C#中,创建一个对象时,可以用一条语句同时实现创建对象并对对象的一部分属性或者全部属性进行初始化,而无需显式调用类型的构造函数。指定元素初始值设定项时,各个对象初始值设定项被分别括在大括号中,初始值之间用逗号分隔。这种简化用法的前提是集合必须实现IEnumerable接口。【例5-1】演示扩展类型的基本用法。55.2泛型和泛型集合集合是指一组组合在一起的性质类似的类型化对象。泛型集合是一种强类型的集合
3、,它能提供比非泛型集合好得多的类型安全性和性能。65.2泛型和泛型集合常见的泛型集合类及对应的非泛型集合类泛型集合类非泛型集合类泛型集合用法举例ListArrayListListdinosaurs=newList();DictionaryHashtableDictionaryd=newDictionary();d.Add("txt","notepad.exe");Queue<
4、T>QueueQueueq=newQueue();q.Enqueue("one");StackStackStacks=newStack();s.Push("one");s.Pop();SortedListSortedListSortedListlist=newSortedList();list.Add("txt","notepad.exe");
5、list.TryGetValue("tif",outvalue))75.2泛型和泛型集合泛型的定义和引用。泛型是指在类名后添加用尖括号括起来的类型参数列表来定义一组“通用化”的类型。泛型只需要定义一次就能实现所有实际类型的调用。如果不使用泛型,就只能针对不同的类型分别编写对应的方法。.NET框架提供了多种常见泛型集合类。85.2泛型和泛型集合列表和排序列表列表System.Collections.Generic.List表示可通过索引访问的强类型对象列表,列表中可以有重复的元素。排序列表So
6、rtedList的用法和列表(List)的用法相似,区别仅是排序列表是按键(Key)进行升序排序的结果。【例5-2】演示列表和排序列表的基本用法。95.2泛型和泛型集合链表LinkedList为双向链表。LinkedList对象中的每个节点都属于LinkedListNode类型。每个节点又指向其Next节点和Previous节点。【例5-3】演示链表的基本用法。105.2泛型和泛型集合字典和排序字典Dictionary泛
7、型类提供了一组“键/值”对,字典中的每项都由一个值及其相关联的键组成,通过键可检索值。一个字典中不能有重复的键。Dictionary提供的常用方法如下。Add方法:将带有指定键和值的元素添加到字典中。TryGetValue方法:获取与指定的键相关联的值。ContainsKey方法:确定字典中是否包含指定的键。Remove方法:从字典中移除带有指定键的元素。115.2泛型和泛型集合【例5-4】演示字典和排序字典的基本用法。125.2泛型和泛型集合队列Queue泛型类表
8、示对象的先进先出集合。队列可以保存null值并且允许有重复的元素。常用方法如下。Enqueue方法:将指定元素插入列尾。Dequeue方法:队列首元素出列。135.2泛型和泛型集合【例5-5】演示队列的基本用法。145.2泛型和泛型集合堆栈Stack泛型类表示同类型实例的大小可变的后进先出(LIFO)集合。堆栈可以保存null值并且允许有重复值.常用方法如下:Push方法:将指定元素插入栈顶。Pop方法:弹出栈顶元素。155.2泛型和泛型集合哈希表和哈希集合Hashtable
此文档下载收益归作者所有