首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

List的 Select()使用方法,该怎么处理

2013-08-26 
List的 Select()使用方法用List存储对象,代码如下:IListStudent studentList new ListStudent()for

List的 Select()使用方法
用List存储对象,代码如下:

IList<Student> studentList = new List<Student>();
for(int i=0;i<1000;i++)
{
   Student student = new Student();
    //赋值
    studentList.Add(student);
}


现在需要从studentList中查询符合条件的对象,Student中有个ClassName字段,需要从studentList中查询ClassName为“高一(3)班”的所有学生,一般是这样做的:
foreach(Student student in studentList)
{
  if(student.ClassName=="高一(3)班")
    {
      newList.Add(student);
      continue;
      }
}
但这种方法比较笨重,一旦数据量大,循环次数会非常多。百度了一下,貌似可以使用Select(),但都说不太详细,请问有没有什么较好的算法可以实现?

[解决办法]
newList = studentList.Where(p => p.ClassName.Contains("高一(3)班")).ToList<Student>();
[解决办法]
来个低版本的:


                  List<Student> stu = studentList.FindAll(delegate(Student student)
                  {
                      if (student.Name.Equals("高一(3)班"))
                      {
                          return true;
                      }
                      else
                      {
                          return false;


                      }
                  });


[解决办法]
var newList = studentList.Where(s=>s.ClassName=="高一(3)班").ToList();

热点排行