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();
  }

你可能感兴趣的:(C# 中=>符号的使用)