zoukankan      html  css  js  c++  java
  • Expression<Func<T,TResult>>和Func<T,TResult>

    Func<T, TResult> 委托

    封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。
    public delegate TResult Func<in T, out TResult>(T arg)
    类型参数
    in T
    此委托封装的方法的参数类型。
    该类型参数是逆变的。即可以使用指定的类型或派生程度更低的类型。有关协变和逆变的更多信息,请参见泛型中的协变和逆变。
    out TResult
    此委托封装的方法的返回值类型。
    该类型参数是协变的。即可以使用指定的类型或派生程度更高的类型。有关协变和逆变的更多信息,请参见泛型中的协变和逆变。
    参数
    arg
    类型:T
    此委托封装的方法的参数。
    返回值
    类型:TResult
    此委托封装的方法的返回值。

        string mid = ",middle part,";
        ///匿名写法
        Func<string, string> anonDel = delegate(string param)
        {
            param += mid;
            param += " And this was added to the string.";
            return param;
        };
        ///λ表达式写法
        Func<string, string> lambda = param =>
        {
            param += mid;
            param += " And this was added to the string.";
            return param;
        };
        ///λ表达式写法(整形)
        Func<int, int> lambdaint = paramint =>
        {
            paramint = 5;
            return paramint;
        };
        ///λ表达式带有两个参数的写法
        Func<int, int, int> twoParams = (x, y) =>
        {
            return x * y;
        };
        string aa = anonDel("Start of string");
        string bb = lambda("Lambda expression");
        string cc = lambdaint(4).ToString();
        string dd = twoParams(10, 20).ToString();
    

      

  • 相关阅读:
    JS计算两个日期时间之差之天数不正确
    nodejs 第一天
    SQLSERVER存储过程基本语法
    复制表结构和数据SQL语句
    SVN使用教程总结
    jquery hover事件只触发一次动画
    导出格式
    C# 反射给对象赋值遇到的问题——类型转换
    a标签下载
    检测到在集成的托管管道模式下不适用的 ASP.NET 设置。
  • 原文地址:https://www.cnblogs.com/wolfocme110/p/5349002.html
Copyright © 2011-2022 走看看