Lambda表达式 => 是什么意思?

 var list = new [] { "aa", "bb", "ac" };
  var result = Array.FindAll(list, s => (s.IndexOf("a") > -1));
  foreach (var v in result)
  Console.WriteLine(v);

帮我解释一下=> 到底是什么意思?,,


温温酱
浏览 991回答 2
2回答

倚天杖

Array.FindAll(list, s&nbsp;=>&nbsp;(s.IndexOf("a")&nbsp;>&nbsp;-1)) 3.0以上这么写.在2.0是如下面这样写.&nbsp;(当然3.0也可以这样写)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var result = Array.FindAll(list, delegate(string s)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return s.IndexOf("a") > -1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; });你也可以这样看下.整个是这样的.&nbsp;&nbsp;&nbsp; delegate bool Predicate<T>(T t);&nbsp;&nbsp;&nbsp; static class ArrayHelp&nbsp;&nbsp;&nbsp; {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; static public T[] FindAllTwo<T>(T[] array, Predicate<T> predicate)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; List<T> ts = new List<T>();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach (T t in array)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (predicate(t))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ts.Add(t);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return ts.ToArray();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;var list = new [] { "aa", "bb", "ac" };&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ArrayHelp.FindAllTwo(list, s => s.IndexOf("a") > -1);

隔江千里

=>&nbsp;&nbsp; 是推导 符号&nbsp;。
打开App,查看更多内容
随时随地看视频慕课网APP