zoukankan      html  css  js  c++  java
  • 泛型委托Func<string,string>()

    今天在参看别人的博客代码是,发现Func<string,string>()代码,以前没有看见过。特此记录下来。

    HandlerItem(exchangeValues, key, StringHandlerHelper.Change);

    //在以上语句中,直接传递方法名。

    private void HandlerItem(RouteValueDictionary values, string key, Func<string, string> handler)
    {
        if (!values.ContainsKey(key)) return;

        var v = values[key];
        if (!(v is string)) return;

        values[key] = handler(v as string);

       //具体的参数传递,方法调用执行,返回值的赋值,在    values[key] = handler(v as string);   语句中执行。
    }

    public static string Change(string s)
    {
        StringBuilder sb = new StringBuilder();
        int index = 0;

        foreach (var c in s)
        {
            if (c >= 'A' && c <= 'Z')   //c等于大写字母时,加入'-',然后加入小写的c。
            {
                if (index > 0)
                    sb.Append(type);
                sb.Append(char.ToLower(c));
            }
            else if (c == type)    //c等于'-'时,加入'--'。
            {
                sb.Append(type);
                sb.Append(type);
            }
            else                   //只加入字母c。
            {
                sb.Append(c);
            }
            index++;
        }
        return sb.ToString();
    }

    // 摘要:
    //     封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。
    //
    // 参数:
    //   arg:
    //     此委托封装的方法的参数。
    //
    // 类型参数:
    //   T:
    //     此委托封装的方法的参数类型。
    //
    //   TResult:
    //     此委托封装的方法的返回值类型。
    //
    // 返回结果:
    //     此委托封装的方法的返回值。
    [TypeForwardedFrom("System.Core, Version=3.5.0.0, Culture=Neutral, PublicKeyToken=b77a5c561934e089")]
    public delegate TResult Func<in T, out TResult>(T arg);

  • 相关阅读:
    Mac 系统环境变量配置
    sublime3+quick3.5 完整使用教程
    httprunner 2.5.7 下.env 文件环境变量的使用及debugtalk的使用,对test的参数化及执行
    python_request的安装及模拟json的post请求及带参数的get请求
    windows 下安装Charles,破解,安装证书,设置可抓取https包
    jmeter元件的执行顺序
    jmeter的参数化实现
    jmeter工作目录介绍、jmeter元件及组件介绍
    jmeter设置成中文显示
    win10下安装jmeter
  • 原文地址:https://www.cnblogs.com/lanchong/p/2278318.html
Copyright © 2011-2022 走看看