• C# Func和Action用法以及区别和使用Lambda表达式


    Func和Actoin区别于定义:

    Func和Action是一种委托,这是在3.5里面新增的,2.0里面我们使用委托是用Delegate,Func位于System.Core命名空间下,使用委托可以提升效率,例如在反射中使用就可以弥补反射所损失的性能。

    Action<T>和Func<T,TResult>的功能是一样的,只是Action系列的委托定义的是没有返回值(返回值为void)的委托而Func系列的委托定义的是返回值的委托。

    Func用法:

    Func<int, bool> func = x => x == 5 ? true : false;
                var bo = func(4);
                Console.WriteLine(bo);

    第一个参数为输入参数,第二个参数为输出值,这时会打印false。

    Action用法:

    Action<int, int> action = (a, b) => Console.WriteLine(a + b);
                action(1, 2);

    因为Action是无返回值的(void),所有这两个参数都是输入参数,这时候会打印3。

  • 相关阅读:
    JVM classloader
    面试整理
    工具配置链接
    IntelliJ IDEA 热部署
    IntelliJ IDEA 常用快捷键
    类文件结构
    判断对象存活的方法
    JVM 运行时数据区域
    vim编辑16进制
    阿里云yum源
  • 原文地址:https://www.cnblogs.com/ZhengHengWU/p/12982067.html
Copyright © 2020-2023  润新知