在list.removeall(PredicateT match )方法中,很难看到参数格式的Predicatetmatch,这一点很重要。 其中predicate是对方法的委托,根据传递的对象和委托中的定义是否匹配,返回true和false。 http://ww.Sinnww
最好的理解方法还是学习代码示例,下面的几个代码示例演示如何使用它。
示例一: staticlistobjectlist=new list object (() 1、2、5、' b '、' c ' ); staticlistobjectlist1=new list object () 1、2、3、' a '、' c ' ); staticvoidmain(string[]args ) list1.removeall ) data=list.contains ) data ); //【键】Foreach(objectIinlist1) console.writeline ) I ); }控制台. read key (; } list 1删除list中包含的元素(交叉点),然后单击委托通过Lambda表达式实现
例如using System; using system.collections.generic; namespaceconsoleapp { class program { staticvoidmain [ ] args } { var intlist=new list int { 1,2,3,4,5,6,7 } intlist //【键】Foreach(variteminintlist ) console.writeline ) item ); }控制台. read key (; } }} 结果元素为{3, "b"}