📜  LINQ Lambda表达式语法

📅  最后修改于: 2021-01-06 05:07:19             🧑  作者: Mango

LINQ Lambda表达语法

在LINQ中,Lambda Expression是一个没有名称的函数。它使语法简短明了。尽管lambda表达式不像LINQ查询那样可读,但它与LINQ查询同等重要,并且在内部转换为lambda。当我们将lambda表达式用作表达式时,其范围受到限制。 Lambda表达式以后不能使用。

在LINQ中定义lambda表达式的语法为:

(Input Parameter) => Method Expression

Lambda Expression是动态的,并在编译时确定类型。在上面左侧的lambda表达式中,我们有一个方括号(),其中包含输入参数。

参数的名称可以是任意值,并且在此参数(=>)之前等于(=),后跟一个大于(>)符号,该符号用于从左到右发送或传递参数,并在在右侧,我们将使用从左侧参数传递来的输入参数执行操作。

整个语法形成一个Lambda表达式

在这里,我们以一个常用的Expression为例:

X => x + 10

C#中的LINQ Lambda表达式示例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
//list to store the countries type of string
            List countries = new List();

            countries.Add("India");

            countries.Add("US");

            countries.Add("Australia");

            countries.Add("Russia");
    //use lambda expression to show the list of the countries
            IEnumerable result = countries.Select(x => x);
    //foreach loop to display the countries
            foreach (var item in the result) 

            {

                Console.WriteLine(item);

            }

            Console.ReadLine();
        }
    }
}

现在运行该应用程序,它将显示国家列表,如下面控制台窗口中的输出所示。

输出量

在上面的示例中,我们使用国家名称创建了一个列表对象(国家) ,并且使用lambda表达式从列表对象(国家)中选择国家。

在这里,“选择”是我们用来从列表中选择的属性。 X是输入参数,位于表达式的左侧,后跟=>运算符。在表达式的右侧,我们有相同的输入参数表示,我们希望在不执行任何操作的情况下显示该参数。我们没有在上面指定任何条件。