C# lambda表达式应用如何找出元素在list中的索引
1.先写个规则方法
private bool check(string str){ return str.EndsWith("xxx"); }
2.再写个Predicate
Predicate<string> predicate=new Predicate<string>(check));
如果逻辑不复杂,可以这样写
private void OpenMenu(GameObject gob){ Predicate<string> predicate=new Predicate<string>(s =>s.StartsWith(gob.name) ); int i=_nameList.FindIndex(predicate); }
predicate这句可以简化一下
Predicate<string> predicate = s => s.StartsWith(gob.name);
这样直接放在list里边就可以了
int index=_nameList.FindIndex(s => s.StartsWith(gob.name));
未找到返回-1
总结
以上所述是小编给大家介绍的C# lambda表达式应用如何找出元素在list中的索引,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
Python中defaultdict与lambda表达式用法实例小结
本文实例讲述了Python中defaultdict与lambda表达式用法.分享给大家供大家参考,具体如下: 从教程中看到defaultdict是一个类,在一台装有Python2.7.6的电脑上使用发现不存在.在文档中搜索了一下也没有找到,想当然以为这或许是Python 3.X专有的.因为教程就是基于Python 3.X实现的.后来换了一台装有Python 3.X的电脑依然出问题. 求助于网络,发现这个类其实是collections模块中的一个类.看来,学习很难摆脱网络环境啊! 这个类是dict
-
利用lambda表达式树优化反射详解
前言 本节重点不讲反射机制,而是讲lambda表达式树来替代反射中常用的获取属性和方法,来达到相同的效果但却比反射高效. 每个人都知道,用反射调用一个方法或者对属性执行SetValue和GetValue操作的时候都会比直接调用慢很多,这其中设计到CLR中内部的处理,不做深究.然而,我们在某些情况下又无法不使用反射,比如:在一个ORM框架中,你要将一个DataRow转化为一个对象,但你又不清楚该对象有什么属性,这时候你就需要写一个通用的泛型方法来处理,以下代码写得有点恶心,但不妨碍理解意思: //
-
Python3中lambda表达式与函数式编程讲解
简单来说,编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数.其一般有如下几种使用方式: 1.lambda的一般形式是关键字lambda后面跟一个或多个参数,紧跟一个冒号,以后是一个表达式.lambda是一个表达式而不是一个语句.它能够出现在Python语法不允许def出现的地方.作为表达式,lambda返回一个值(即一个新的函数).lambda用来编写简单的函数,而def用来处理更强大的任务.例如: f = lambda x,y
-
Python lambda函数基本用法实例分析
本文实例讲述了Python lambda函数基本用法.分享给大家供大家参考,具体如下: 这里我们简单学习一下python lambda函数. 首先,看一下python lambda函数的语法,如下: f=lambda [parameter1,parameter2,--]:expression lambda语句中,冒号前是参数,可以有0个或多个,用逗号隔开,冒号右边是返回值.lambda语句构建的其实是一个函数对象. 1>无参数 f=lambda :'python lambda!' >>&
-
Python lambda表达式用法实例分析
本文实例讲述了Python lambda表达式用法.分享给大家供大家参考,具体如下: lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数. lambda所表示的匿名函数的内容应该是很简单的,如果复杂的话,干脆就重新定义一个函数了,使用lambda就有点过于执拗了. lambda就是用来定义一个匿名函数的,如果还要给他绑定一个名字的话,就会显得有点画蛇添足,通常是直接使用lambda函数.如下所示: add = lambda x, y : x+y
-
python内置函数:lambda、map、filter简单介绍
lambda lambda可以理解为一种小函数,但是它是一个表达式,而不是一个语句,所以在def不允许出现的地方仍然可以使用lambda函数,例如list里.但是lambda内只可以执行一个表达式. def f(x): return x**2 print f(3) a = lambda x: x**2 print a(3) a = lambda x,y: x+y print a(1,2) ~ 一个lambda语句就相当于一个函数定义,调用的时候也和函数一样. map函数 有时候我们可以需要处理一
-
简单谈谈python中的lambda表达式
最近在coding时发现使用lambda还是有诸多优点的,很多时候代码更整洁,更pythonic,所以在此简单总结一下 1.lambda是什么 举个简单的例子: func = lambda x: x*x def func(x): return x*x 两个func的定义是完全相同的,那两种函数定义方法配合map使用,将list中所有元素求平方,代码会是什么样的, def func(x): return x*x map(func, [i for i in range(10)]) map(lambd
-
python中lambda()的用法
在C++11和C#中都有匿名函数的存在.下面看看在python中匿名函数的使用. 1.lambda只是一个表达式,函数体比def简单很多. 2.lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去. 3.lambda表达式是起到一个函数速写的作用.允许在代码内嵌入一个函数的定义. 例1.定义一个lambda表达式,求三个数的和 # -*- coding: UTF-8 -*- f = lambda x,y,z:x + y + z print f(1,2,
-
python 用lambda函数替换for循环的方法
场景如下: 现在有一个dataframe,其中一列为score,值从0-100, df: score 98 88 37 68 86 33 现在需要增加一列level,给这些分数分类,90分以上为A,60-90为B,60以下为C. 常用的方法肯定是使用for循环,对每一行进行处理. import pandas as pd list = [98,88,37,68,86,33] df = pd.DataFrame(list, columns=['score']) # convert list to d
-
Python 中的lambda函数介绍
Lambda函数,即Lambda 表达式(lambda expression),是一个匿名函数(不存在函数名的函数),Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction). 一.lambda函数也叫匿名函数,即,函数没有具体的名称.先来看一个最简单例子: def f(x): return x**2 print f(4) Python中使用lambda的话,写成这样 g = lambda x : x**2 print g(4) 二.la
随机推荐
- php strrpos()与strripos()函数
- Oracle Arraysize设置对于逻辑读的影响实例分析
- python django 增删改查操作 数据库Mysql
- VMware Workstation如何创建加密虚拟机
- PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
- php获取用户IPv4或IPv6地址的代码
- 谈谈PHP中substr和substring的正确用法及相关参数的介绍
- php列出mysql表所有行和列的方法
- web方式ftp
- Python中用于计算对数的log()方法
- mysql如果数据不存在,则插入新数据,否则更新的实现方法
- 并发环境下mysql插入检查方案
- 解析Python中的__getitem__专有方法
- JQuery+Ajax实现数据查询、排序和分页功能
- PowerShell中字符串使用单引号和双引号的区别
- Mysql中大小写敏感问题导致的MySql Error 1146 Tabel doen’t exist错误
- 比较详细的完美解决安装sql2000时出现以前的某个程序安装已在安装计算机上创建挂起的文件操作。 原创
- PHP中使用GD库绘制折线图 折线统计图的绘制方法
- JS 获取HTML标签内的子节点的方法
- 浅析ES6的八进制与二进制整数字面量