zoukankan      html  css  js  c++  java
  • C# 匿名方法及Lambda表达式

    1.匿名方法

       定义:匿名方法不能直接在类中定义,而是在给委托变量赋值的时候,需要赋值一个方法,此时可以“现做现卖”,定义一个匿名方法传递给该委托。

       举实例说明:

       实例一:无参数,无返回值的一个匿名方法

         ////首先定义一个委托

         public delegate void Mydelegate();

        ////声明

         Mydelegate md=delegate(){

               Console.WriteLine("我是Andrew"); }

        ////调用委托

           md();

        实例二:有参数,无返回值的一个匿名方法

         ////首先定义一个委托

         public delegate void Mydelegate(string msg);

        ////声明

         Mydelegate md=delegate(string msg){

               Console.WriteLine("我是Andrew"+msg); }

        ////调用委托

           md("你是谁?");

     实例三:有参数,有返回值的一个匿名方法

         ////首先定义一个委托

         public delegate int Mydelegate(int num1,int num2);

        ////声明

         Mydelegate md=delegate(int n1,int n2){////注意:匿名方法时,无需添加返回的类型

               return n1+n2;}

        ////调用委托

           md(1,2);  ////结果为3

    2. Lambda表达式的语法格式:
         参数列表 => 语句或语句块
         其中“参数列”中可包含任意个参数(与委托对应),如果参数列中有0个或1个以上参数,则必须使用括号括住参数列,如下:
         () => Console.Write("0个参数")
         I => Console.Write("1个参数时参数列中可省略括号,值为:{0}",i)
         (x,y) => Console.Write("包含2个参数,值为:{0}*{1}",x,y)
     
    实例一:无参数,无返回值的一个匿名方法

         ////首先定义一个委托

         public delegate void Mydelegate();

        ////声明

         Mydelegate md=()=>{

               Console.WriteLine("我是Andrew"); }

        ////调用委托

           md();

        实例二:有参数,无返回值的一个匿名方法

         ////首先定义一个委托

         public delegate void Mydelegate(string msg);

        ////声明

         Mydelegate md=m=>{

               Console.WriteLine("我是Andrew"+m); }

        ////调用委托

           md("你是谁?");

     实例三:有参数,有返回值的一个匿名方法

         ////首先定义一个委托

         public delegate int Mydelegate(int num1,int num2);

        ////声明

         Mydelegate md=(x,y)=>{////注意:匿名方法时,无需添加返回的类型

               return x+y;}

        ////调用委托

           md(1,2);  ////结果为3

     
     
     
     
     
  • 相关阅读:
    elasticsearch的服务器响应异常及解决策略(转)
    年薪30W的软件测试“老司机”工作经验
    Selenide 阶段性总结介绍(UI自动化测试工具)
    自动化测试的类型以及对测试自动化的几个误区
    使用Jmeter进行http接口性能测试
    如何修炼为测试架构师
    关于接口测试的一点小小的感悟
    详细讲解 A/B 测试关键步骤,快来检查下还有哪些疏漏的知识点
    JMeter测试WebSocket的经验总结
    Android 自动化测试及性能数据采集的 Python 脚本
  • 原文地址:https://www.cnblogs.com/Time_1990/p/4074667.html
Copyright © 2011-2022 走看看