zoukankan      html  css  js  c++  java
  • C#进阶-Lambda-委托-匿名方法

    委托:对方法的封装

    public delegate void Caculate(int a ,int b); --公开的委托,返回类型为void的Caculate(委托名:定义方法类型)的方法,且接受2个int参数;

    public void Add(int a,int b)

    {

       a+=b;

    }

    Caculate add=Add;

    add(2,3);

    特点:

    1,委托是一种特殊的类型,代表着对方法的引用

    2,委托变量可以像方法一样使用

    3,委托也需要像类(位置平级)/方法(参数与返回值)一样设置

    匿名方法与Lambda:

    public delegate int Caculate(int a,int b);

    //去掉delegate,并在参数后加=>,=>a+b表示:=>{return a+b}

    Caculate methoud=delegate(int a,int b)=> a+b;   --方法体内只有一行代码,才能简写,否则=>{代码内容全写};

    methoud(2,3);

    Lambda委托定义:

    //有返回值和参数:

    Func<int,int> methoud=(int a)=>a+=3;   --Func<int,int(只有最后一个参数为返回值类型,其余为输入参数类型)>

    methoud(2);                --运行结果为5;

    //没有返回值,也没有参数

    Action action=()=>Consol.WriteLine("今天晴天");   --就算没有输入参数,也要空的括号;

    action;                      --没有返回值,所以显示System.Action

    如果这篇文章,对你有帮助,请点击关注,我会持续更新......
  • 相关阅读:
    Zephyr网络协议
    Zephyr启动过程与中断响应
    CortexM处理器的一些特性记录
    qemu 使用记录
    Request与Response详解
    http请求头(Header)参数详解
    win10java环境变量配置
    逻辑运算符:与、或、非、异或
    SQL注入相关知识整理
    网页是否存在SQL注入的简单判断
  • 原文地址:https://www.cnblogs.com/-GoFurther/p/13741051.html
Copyright © 2011-2022 走看看