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中的索引,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
问题内容: 具体来说,我有TabPane,我想知道其中是否包含具有特定ID的元素。 因此,我想使用Java中的lambda表达式来做到这一点: 问题答案: 尝试使用Lambda表达式。这是更好的方法。
具体来说,我有TabPane,我想知道其中是否有具有特定ID的元素。 所以,我想用Java中的lambda表达式来实现这一点:
我在尝试使用lambda表达式时遇到了这个错误。
我有一个对象列表,我想找到一个具有特定属性值的元素的索引。 例如 我知道用for循环写一个很容易,但是有没有任何现有的简单方法来做到这一点,比如流或任何库Util?
问题内容: 这是我的代码 输出: 我无法在我的代码的以下部分中区分两者 有人能和be并解释两者的区别吗? 问题答案: 该方法旨在创建一个使用基于对象属性的订单进行比较的。当使用lambda表达式(这是此处的简短写法)作为属性提供程序函数时,结果将比较值本身。这工作时,要比较的对象有一个 自然秩序 的了。 所以 与…相同 尽管后者更有效,因为它对于具有自然顺序的所有类型都实现为单例(和实现)。 根本
问题内容: 我试图在 jrxml 文件中使用lambda表达式来获取我的字段的值。 我导入了适当的类,但这给了我错误 p无法解析为变量。 如何在 JasperReports 模板中使用Lambda表达式? 例外: 问题答案: 如果您使用的是Eclipse JDT编译器,请首先确保您具有一个相当新的版本。 例如,您可以从Maven获得4.5.1 ,然后将以下属性添加到jasperreports.pr