资源描述:
《lambda表达式学习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Lambda表达式学习 项目里面需要经常对一系列同类型集合进行操作,如对集合进行增加元素,删除集合的指定索引的元素等等. 我们可以使用ArrayList来进行.如 1 ArrayList stringArrayList=new ArrayList();2 stringArrayList.Add("大家好");3 stringArrayList.Add("你们好");4 stringArrayList.Add("同志们好");5 string str1=(string)stringArrayList[0];//取出一个元素后,需要转换一
2、次类型才可以 或者是 1 ArrayList intArrayList=new ArrayList();2 intArrayList.Add(6);3 intArrayList.Add(8);4 intArrayList.Add(66);5 int int1=(int)intArrayList[0];//取出一个元素后,需要转换一次类型才可以 但是ArrayList中每个元素的类型都是Object(stringArrayList[0]的类型是Object),这意味着我们每一次的操作,其实都进行了隐式的类型转换,加入资料是把普通类型转
3、换成Object类型,取出资料是把Object类型转换成普通类型. 于是我在想象,如果有一种数组类型,在定义的时候,可以给出每个元素具体的类型,并且在赋值或者取值的时候,就是完全按照这个类型进行操作该多好. 在.net2.0里面,我找到了List这个类型.List是一个泛型,我们看看List的使用 代码1 List stringArrayList = new List();2 stringArrayList.Add("大家好");3 string str1 = stringArrayList[0];//
4、直接赋值成功!因为取出来的就是string4 //或者5 List intArrayList = new List();6 intArrayList.Add(8);7 int int1 = intArrayList[0];//直接赋值成功!因为取出来的就是int 大家可以看出,List在实例化的时候就需要定义一个类型,也就是尖括号中间的东西,在增加元素,或者获取元素的时候,操作的都是最开始定义的那种类型.List便是传说中的泛型类型. 泛型可以用在方法上,也可以用在类上.如果看到某个方法或者类后面带有尖括号的,
5、那么这个肯定就是泛型了. 现在,我找到了能够有效存储我要操作的集合类型,那么我们要解决一些操作了. 我需要对集合进行一个连接输出(把所有的元素连接在一起,每个元素之间使用
来分割),还需要知道所有元素的总长度.显然,光一个List类型是解决不了问题的.于是我自己定义了一个自己的泛型类型 代码 1 /// 2 /// 这是一个泛型类,类名后面接着一个尖括号里面的那个t,是我们自己定义的,如果你高兴,你可以定义w,y,z,WC都没有问题! 3 /// 这个T表示说我们在实例化类的时候,需要告诉类,
6、我们是用哪一种类型来进行操作. 4 /// 5 /// 6 public class MyList 7 { 8 public List _List { get; set; } 9 public MyList()10 {11 this._List = new List();12 }13 /// 7、mary>14 /// 用来连接所有元素用15 /// 16 /// 连接后的字符串17 public string JoinOut()18 {19 StringBuilder stbTemp = new StringBuilder();20 foreach (var item in _List)21 {22
8、 stbTemp.Append(item);23 stbTemp.Append("
");24 }25