zoukankan      html  css  js  c++  java
  • 关于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。

  • 相关阅读:
    NYOJ 267(郁闷的C小加(二)) 后缀表达式求值
    NYOJ 104 最大和
    NYOJ 654(01包优化)
    CMM (度量Metrics)
    CMM (软件工程与集成产品开发)
    CMM (同行评审Peer Review)
    Software Engineering (软件工程简述)
    CMM (需求管理Requirement Management)
    CMM (项目计划与跟踪Project Management)
    Symbian(Carbide IDE开发环境搭建)
  • 原文地址:https://www.cnblogs.com/yuer20180726/p/10382470.html
Copyright © 2011-2022 走看看