c#泛型集合的遍历

来源:百度知道 编辑:UC知道 时间:2024/06/09 03:06:47
我吧,没太搞懂,泛型集合遍历有几种方式?
我记得有.value 和.key?的?
它们分别在什么时候用?

有三种
很简单,给你举个例子:
1、先声明一个Dictoinary<key,value>泛型集合
创建一个Student类的对象Student stu=new Student()(在这个类中
有一个name属性)
Dictionary<student.name,Student> students=new Dictionary<student.name,Student>();
students.Add(stu);
2、开始遍历
(1)可以用value遍历就是Stuent的 对象
foreach(Student stu in students.values)
{}
(2)也可以用key遍历 即student.name
foreach(string key in students.keys)
{}
3、另外list<T>泛型集合也同样的道理,只不过,
它遍历时要通过索引
例如
list<Student> stu=new list<Student>();
stu(1).name;
希望你能明白

泛型听起来很高深的一个词,但实际上它的作用很简单,就是提高c#程序的性能。
比如在计算机中经常用到一些数据结构,如队列,链表等,而其中的元素以前一般这么定义:object a=new object();
这样就带来一个严重的问题,用object来表示元素没有逻辑问题,但每次拆箱、封箱就占用了大量的计算机资源,导致程序性能低下,而这部分内容恰恰一般都是程序的核心部分,如果使用object,那么程序的表现就比较糟糕。
而使用泛型则很好的解决这个问题,本质就是在编译阶段就告诉编译器,数据结构中元素的种类,既然编译器知道了元素的种类,自然就避免了拆箱、封箱的操作,从而显著提高c#程序的性能。
比如List<string>就直接使用string对象作为List的元素,而避免使用object对象带来的封箱