关于C#List中FindAll用法的一些简单示例

  1. using System;  
  2. using System.Collections.Generic;  
  3.   
  4.   
  5. public partial class List : System.Web.UI.Page  
  6. {  
  7.     protected void Page_Load(object sender, EventArgs e)  
  8.     {  
  9.         CreateList();  
  10.     }  
  11.   
  12.     private void CreateList()   
  13.     {  
  14.         List<string> list = new List<string>();  
  15.         list.Add("Compsognathus");  
  16.         list.Add("Amargasaurus");  
  17.         list.Add("Oviraptor");  
  18.         list.Add("Velociraptor");  
  19.         list.Add("Deinonychus");  
  20.         list.Add("Dilophosaurus");  
  21.         list.Add("Gallimimus");  
  22.         list.Add("Triceratops");  
  23.   
  24.         //循环输出每一项   
  25.         Response.Write("分别输出每一项:");  
  26.         foreach (string str in list)  
  27.         {  
  28.             Response.Write(str + ";");  
  29.         }  
  30.   
  31.         //查找字符串中包含saurus的字符,利用了匿名方法(第一种方式)   
  32.         List<string> listFind = list.FindAll(delegate(string s){  
  33.            return s.Contains("saurus");  
  34.         });  
  35.   
  36.         Response.Write("查找到的字符串为:");  
  37.         foreach (string str in listFind)  
  38.         {  
  39.             Response.Write(str+" ;");  
  40.         }  
  41.   
  42.         //第二种方式,这两种方式实际上是等价的   
  43.         Response.Write("</br>FindAll(EndWithSaurus):");  
  44.         List<string> subList = list.FindAll(EndWithSaurus);//传入了一个方法名   
  45.         foreach (string str in subList)  
  46.         {  
  47.             Response.Write(str+" ;");  
  48.         }  
  49.   
  50.     }  
  51.   
  52.     private bool EndWithSaurus(string s)  
  53.     {  
  54.         if ((s.Length > 5) && (s.Substring(s.Length - 6).ToLower() == "saurus"))  
  55.             return true;  
  56.         else  
  57.             return false;  
  58.     }  

过滤条件用法

List<string> subList = list.FindAll(delegate(itemType   x){return   x.id==i;});

就可以了。其中itemType是你的元素的类型,即List <T> 中的类型参数T。

posted @ 2019-02-15 11:07  爱笑的小宇宙  阅读(9452)  评论(0编辑  收藏  举报