Lambda表达式

/*----------Lambda

             * */

            //--如果仅有一个入参,则可省略圆括号。

            Console.WriteLine("*************************************");

            Action dummyLambda = () =>

                 {

                     Console.WriteLine("Hello World from a Lambda expression!");

                 };

            dummyLambda();



            //--如果仅有一行语句,并且在该语句中返回,则可省略大括号,并且也可以省略 return 关键字。

            Func<double, double> square = x => x * x;

            double douResult = square(5);

            Console.WriteLine(douResult);



            Func<double, double, double> product = (x, y) => x * y;

            double proResult = product(5, 6);

            Console.WriteLine(proResult);



            Action<double, double> printProduct = (x, y) => { Console.WriteLine(x * y); };

            printProduct(5, 9);





            Func<double[], double[], double> dotProduct = (x, y) =>

            {

                var dim = Math.Min(x.Length, y.Length);

                var sum = 0.0;

                for (var i = 0; i != dim; i++)

                    sum += x[i] + y[i];

                return sum;

            };

            double dotResult = dotProduct(new double[] { 1, 2, 3 }, new double[] { 4, 5, 6 });

            Console.WriteLine(dotResult);

 

你可能感兴趣的:(lambda)