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

[待解决问题]

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

我也关注这个问题
提问时间: 2010-04-08 22:05
离问题结束还有 10 天 4 小时 浏览:69 次
 var list = new [] { "aa", "bb", "ac" };
  var result
= Array.FindAll(list, s => (s.IndexOf("a") > -1));
  
foreach (var v in result)
  Console.WriteLine(v);

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

所有回答(2)
0 0

=>   是推导 符号 。

4天前  回答者:Sam_Zhang - 菜鸟二级
添加该答案的评论
0 0

Array.FindAll(list, s => (s.IndexOf("a") > -1)) 3.0以上这么写.

在2.0是如下面这样写. (当然3.0也可以这样写)       

 var result = Array.FindAll(list, delegate(string s)
            {
                return s.IndexOf("a") > -1;
            });

你也可以这样看下.整个是这样的.

    delegate bool Predicate<T>(T t);

    static class ArrayHelp
    {
        static public T[] FindAllTwo<T>(T[] array, Predicate<T> predicate)
        {
            List<T> ts = new List<T>();
            foreach (T t in array)
            {
                if (predicate(t))
                    ts.Add(t);
            }
            return ts.ToArray();
        }
    }

    var list = new [] { "aa", "bb", "ac" }; 
    ArrayHelp.FindAllTwo(list, s => s.IndexOf("a") > -1);

4天前  回答者:天天不在 - 小虾三级

posted on 2010-04-13 18:04  黑子范  阅读(764)  评论(0编辑  收藏  举报

导航