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

    如果这篇文章,对你有帮助,请点击关注,我会持续更新......
  • 相关阅读:
    nginx+ftp图片服务器搭建
    第一篇随笔
    字符设备控制技术
    总结字符设备
    字符设备驱动模型
    使用字符设备驱动
    驱动开发前奏
    linux内核链表的移植与使用
    linux内存管理子系统
    内核模块可选信息
  • 原文地址:https://www.cnblogs.com/-GoFurther/p/13741051.html
Copyright © 2011-2022 走看看