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中的索引,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
利用lambda表达式树优化反射详解
前言 本节重点不讲反射机制,而是讲lambda表达式树来替代反射中常用的获取属性和方法,来达到相同的效果但却比反射高效. 每个人都知道,用反射调用一个方法或者对属性执行SetValue和GetValue操作的时候都会比直接调用慢很多,这其中设计到CLR中内部的处理,不做深究.然而,我们在某些情况下又无法不使用反射,比如:在一个ORM框架中,你要将一个DataRow转化为一个对象,但你又不清楚该对象有什么属性,这时候你就需要写一个通用的泛型方法来处理,以下代码写得有点恶心,但不妨碍理解意思: //
-
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
-
简单谈谈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、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函数基本用法实例分析
本文实例讲述了Python lambda函数基本用法.分享给大家供大家参考,具体如下: 这里我们简单学习一下python lambda函数. 首先,看一下python lambda函数的语法,如下: f=lambda [parameter1,parameter2,--]:expression lambda语句中,冒号前是参数,可以有0个或多个,用逗号隔开,冒号右边是返回值.lambda语句构建的其实是一个函数对象. 1>无参数 f=lambda :'python lambda!' >>&
-
Python中defaultdict与lambda表达式用法实例小结
本文实例讲述了Python中defaultdict与lambda表达式用法.分享给大家供大家参考,具体如下: 从教程中看到defaultdict是一个类,在一台装有Python2.7.6的电脑上使用发现不存在.在文档中搜索了一下也没有找到,想当然以为这或许是Python 3.X专有的.因为教程就是基于Python 3.X实现的.后来换了一台装有Python 3.X的电脑依然出问题. 求助于网络,发现这个类其实是collections模块中的一个类.看来,学习很难摆脱网络环境啊! 这个类是dict
-
Python3中lambda表达式与函数式编程讲解
简单来说,编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数.其一般有如下几种使用方式: 1.lambda的一般形式是关键字lambda后面跟一个或多个参数,紧跟一个冒号,以后是一个表达式.lambda是一个表达式而不是一个语句.它能够出现在Python语法不允许def出现的地方.作为表达式,lambda返回一个值(即一个新的函数).lambda用来编写简单的函数,而def用来处理更强大的任务.例如: f = lambda x,y
-
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表达式用法实例分析
本文实例讲述了Python lambda表达式用法.分享给大家供大家参考,具体如下: lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数. lambda所表示的匿名函数的内容应该是很简单的,如果复杂的话,干脆就重新定义一个函数了,使用lambda就有点过于执拗了. lambda就是用来定义一个匿名函数的,如果还要给他绑定一个名字的话,就会显得有点画蛇添足,通常是直接使用lambda函数.如下所示: add = lambda x, y : x+y
随机推荐
- 自定义vbs脚本实现开机后延时启动指定程序的方法
- Delphi创建开机启动项的方法示例
- mysql数据库差异比较的PHP代码
- 详解Vue学习笔记入门篇之组件的内容分发(slot)
- Java组件commons fileupload实现文件上传功能
- 解决vue里碰到 $refs 的问题的方法
- Asp.net配合easyui实现返回json数据实例
- PHP长网址与短网址的实现方法
- PHP调试及性能分析工具Xdebug详解
- 跟老齐学Python之类的细节
- Java微信二次开发(一) Java微信请求验证功能
- 职业生涯中12种最致命的想法
- SQL Server学习笔记之事务、锁定、阻塞、死锁用法详解
- jquery自动补齐功能插件flexselect用法示例
- jQuery下的动画处理总结
- 页面元素绑定jquery toggle后元素隐藏的解决方法
- 怎样在UNIX系统下安装php3
- 浅谈选择、冒泡排序,二分查找法以及一些for循环的灵活运用
- maven 隐式依赖引起的包冲突解决办法
- Android手势操作简单实例讲解