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

如下所示:


代码如下:

using System;
using System.Collections.Generic;

public partial class List : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        CreateList();
    }

private void CreateList()
    {
        List<string> list = new List<string>();
        list.Add("Compsognathus");
        list.Add("Amargasaurus");
        list.Add("Oviraptor");
        list.Add("Velociraptor");
        list.Add("Deinonychus");
        list.Add("Dilophosaurus");
        list.Add("Gallimimus");
        list.Add("Triceratops");

//循环输出每一项
        Response.Write("分别输出每一项:");
        foreach (string str in list)
        {
            Response.Write(str + ";");
        }

//查找字符串中包含saurus的字符,利用了匿名方法(第一种方式)
        List<string> listFind = list.FindAll(delegate(string s){
           return s.Contains("saurus");
        });

Response.Write("查找到的字符串为:");
        foreach (string str in listFind)
        {
            Response.Write(str+" ;");
        }

//第二种方式,这两种方式实际上是等价的
        Response.Write("</br>FindAll(EndWithSaurus):");
        List<string> subList = list.FindAll(EndWithSaurus);//传入了一个方法名
        foreach (string str in subList)
        {
            Response.Write(str+" ;");
        }

}

private bool EndWithSaurus(string s)
    {
        if ((s.Length > 5) && (s.Substring(s.Length - 6).ToLower() == "saurus"))
            return true;
        else
            return false;
    }
}

(0)

相关推荐

  • C#中循环语句:while、for、foreach的使用

    循环结构可以实现一个程序模块的重复执行,它对于我们简化程序,更好地组织算法有着重要的意义.C#为我们提供了若干种循环语句,分别适用于不同的情形,下面依次介绍. C#中循环语句:while.for.foreach 1.while循环 static void Main(string[] args) { int[] hs = { 1,2,3,4,5,6,7,8,9}; int ligh = hs.Length; while (ligh > 0) { Console.WriteLine(hs[ligh

  • 浅谈C#中的for循环与foreach循环

    for循环和foreach循环其实可以算得上是从属关系的,即foreach循环是可以转化成for循环,但是for循环不一定能转换成foreach循环. 下面简单介绍一下两种循环: 1.for循环 代码格式: for(表达式1;循环条件;表达式2) { 循环体 } 代码含义: 首先运行表达式1; 然后判断条件是否为真,如果为真,则执行循环体,执行完后再运行表达式2: 接着再判断循环条件--直到循环条件为假才会结束循环. 注意事项: 表达式1:可以是任何代码,一定会执行且只会执行一次: 表达式2:可

  • c#入门之循环语句使用详解(for循环、do/while)

    记得第一次学编程的时候,就听说过一句话:"新手学习和掌握一门编程语言是很容易的,但是如果你学会了某种编程语言,再去学习新的语言,就很难掌握了",现在深深地感受到了这方面的阻力. 其实流程控制.循环,包括面向对象这些知识,基本所有语言都是相通的,唯一的区别就在于书写时的格式.规范不一致.而这些方面的差异,又是比较细微的,所以往往在学的时候依靠经验能很快理解,但过后却发现并未能使(掌)用(握). do / while 循环的意义,其实就是重复执行语句,当然,还会有相应的条件判断,不然就成死

  • C#中for循环、while循环循环执行的方法

    先给大家介绍下C#中的循环执行for循环 在这一节练习中,我们向大家介绍一下C#中的另一种重要的循环语句,for循环. for(表达式1;表达式2;表达式3) { 循环体 } 表达式1:一般为赋值表达式,给控制变量赋初值: 表达式2:逻辑表达式,循环控制条件:当条件为真时,循环执行循环体中的语句. 表达式3:一般为赋值表达式,给控制变量增量或减量. 这样看起来是不是挺抽象的.通过实际的例子,你会非常容易理解for循环. 你创建一个项目.解决方案名称为Sloution18,项目名称为Exercis

  • c#中list.FindAll与for循环的性能对比总结

    前言 最近在网上看到一篇文章,里面说到:List<T>.FindAll的效率竟然比for循环还差,下面是文章的截图: 以上就是baidu出来的一篇文章,让我惊诧不已,因为在AI模块我已经使用了很多FindAll.但是,上文的结论是真的吗? 我在上文代码基础上增加了多次测试的代码: 得到了如下结果: .Net2.0, visual studio 执行1,1,10, 100,1000次: .Net4.1, visual studio 执行1,1,10, 100,1000次: Unity 先预处理再

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

    如下所示: 复制代码 代码如下: using System;using System.Collections.Generic; public partial class List : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        CreateList();    } private void CreateList()     {        List<string>

  • Python random模块用法解析及简单示例

    用法示例: import random # 1)随机小数 print(random.random()) # 获取大于0且小于1 之间的小数 random.random() print(random.uniform(1, 4)) # 获取大于1小于3的小数 # 2)随机整数 print(random.randint(1, 9)) # 获取大于等于1且小于等于9之间的整数 print(random.randrange(1, 9)) # 获取大于等于1且小于9之间的整数 print(random.ra

  • python中requests和https使用简单示例

    requests 是一个非常小巧全面的库,应用它可以很容易写出与服务器进行交互的程序,今天遇到了一个问题,与服务器交互时,url都是https开头的,都进行了ssl加密处理,这样一来,就不能像之前那样访问http开头的url那样进行处理了. 查了一些资料,可以配置ssl进行验证的文件,方式如下 res = requests.get('https://127.0.0.1:5503/login',cert=('./server.crt', './server.key.unsecure')) 可运行后

  • 从Python程序中访问Java类的简单示例

    from jnius import autoclass >>> Stack = autoclass('java.util.Stack') >>> stack = Stack() >>> stack.push('hello') >>> stack.push('world') >>> stack.pop() 'world' >>> stack.pop() 'hello' 上面的代码中,我们使用 auto

  • vue3中emit('update:modelValue')使用简单示例

    父 <template> <TestCom v-model="test1" v-model:test2="test2"></TestCom> <h1>{{test1}}测试1</h1> <h1>{{test2}}测试2</h1> </template> <script setup> import { ref, reactive } from 'vue' con

  • 浅谈Android单元测试的作用以及简单示例

    前提概要 受人嫌弃的单元测试 对于单元测试这个知识点,其实很多开发者是不太接触的,包括笔者,在实习之前也并未实用过单元测试,或者说并没感受到单元测试的好处. 对于bug的调试,笔者之前更倾向于使用log和断点调试,可以说会了这两个,大部分的逻辑bug都能自己解决了.这两个与看似臃肿的单元测试代码相比更受大家的喜爱. 但是,使用log和断点调试的前提是开发人员较少,甚至是单人开发的情况.如果我自己开发,我完全可以每次都使用集成测试,我知道每一个功能会涉及哪些模块的代码,然后根据逻辑设置log或者断

  • Java中动态规则的实现方式示例详解

    背景 业务系统在应用过程中,有时候要处理"经常变化"的部分,这部分需求可能是"业务规则",也可能是"不同的数据处理逻辑",这部分动态规则的问题,往往需要可配置,并对性能和实时性有一定要求. Java不是解决动态层问题的理想语言,在实践中发现主要有以下几种方式可以实现: 表达式语言(expression language) 动态语言(dynamic/script language language),如Groovy 规则引擎(rule engine

  • Spring中@Async用法详解及简单实例

    Spring中@Async用法 引言: 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的:但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类任务,其实,在spring 3.x之后,就已经内置了@Async来完美解决这个问题,本文将完成介绍@Async的用法. 1.  何为异步调用? 在解释异步调用之前,我们先来看同步调用的定义:同步就是整个处理过程顺序执行,当各个过程都执行完毕,并返回结果. 异步调用则是只是发送了调用的指令,调用者无需

  • Python 中 Virtualenv 和 pip 的简单用法详解

    本文介绍了Python 中 Virtualenv 和 pip 的简单用法详解,分享给大家,具体如下: 0X00 安装环境 我们在 Python 开发和学习过程中需要用到各种库,然后在各个不同的项目和作品里可能用的版本还不一样,正因为有这种问题的存在才催生了virtualenv的诞生.virtualenv 可以在电脑上创建一个虚拟环境,可以针对每一个项目创建一个虚拟环境,这样就不用担心各个不同的项目用不同版本的库的时候出现的冲突了. 下面的内容只适用于 Linux/OSX,未经 Windows 环

  • python中正则表达式 re.findall 用法

    Python 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re 模块使 Python 语言拥有全部的正则表达式功能. compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象.该对象拥有一系列方法用于正则表达式匹配和替换. re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数. 本文主要给大家介绍

随机推荐