• 【C#】=>符号的使用


    Lambda表达式。
    Lambda表达式是C#3.0的新内容,如果您之前学习的C#2.0,不认识也就不奇怪了。
    给您举个例子。
    例如,我定义一个委托:
    delegate int Method(int a, int b);
    再定义一个方法:
    int Add(int a, int b)
    {
    return a + b;
    }
    我可能需要这样通过委托调用方法:
    Method m += Add;
    Console.WriteLine(m(2, 3));
    ====================================================
    但如果用 Lambda 表达式:
    Method m += (a ,b) => a + b;
    Console.WriteLine(m(2, 3));
    可以省去方法的定义。
    实际上, Lambda 表达式只是简化了匿名方法的语法而已。

    附 C# 2.0 的匿名方法语法:
    Method m += delegate(int a, int b) { return a + b; };
    Console.WriteLine(m(2, 3));
    *******************************************************************************
    C#中 += (s, e) => 这些字符什么意思
    public MainWindow()
    {
    InitializeComponent();
    this.Loaded += (s, e) => DiscoverKinectSensor();
    this.Unloaded += (s, e) => this.kinect = null;
    }
    在上面的代码中,+=是在委托链上增加一个委托,(s,e) =>是一个lambda表达式,这个表达式创建一个委托,委托处理的主体就是=> 后面的部分。

    其实这个写法相当于
    this.Loaded += new EventHandler(Form_Loaded);

    private void Form_Loaded(object sender,   EventArgs e) {
        DiscoverKinectSensor();
    }
  • 相关阅读:
    软件下载
    01_动态规划之01背包问题
    25_使用切片建立一个动态的二位数组.go
    为什么突然想起来写博客
    24_切片的使用
    23_随机数的生成和冒泡排序
    22_数组做函数参数
    21_一维数组和二位数组的使用
    20_指针类型的使用
    19_获取命令参数
  • 原文地址:https://www.cnblogs.com/qiuxiangmuyu/p/5827412.html
Copyright © 2020-2023  润新知