zoukankan      html  css  js  c++  java
  • Action<T>泛型委托

    描述:

    封装一个方法,该方法只采用一个参数并且不返回值.

    语法:

    public delegate void Action<T>(T arg);

    T:

    参数类型:此委托封装的方法的参数类型

    arg:

    参数:此委托封装的方法的参数

    备注:

    通过此委托,可以将方法当做参数进行传递.

    其他形式:

    public delegate void Action<T1, T2>(T1 arg1, T2 arg2);
    public delegate void Action<T1, T2, T3>(T1 arg1, T2 arg2, T3 arg3);
    public delegate void Action<T1, T2, T3, T4>(T1 arg1, T2 arg2, T3 arg3, T4 arg4);

    例子:

    protected void Page_Load(object sender, EventArgs e)
    {
        List<int> list = new List<int>();
        list.AddRange(new int[] { 7, 6, 10, 1, 2, 3, 4, 5, 8 });
    
        Action<int> action = new Action<int>(AddFive);
        list.ForEach(action);
    
        //效果同
        //      Action<int> action = new Action<int>(AddFive);
        //      list.ForEach(action);
        //list.ForEach(x => Response.Write((x + 5).ToString() + "<br/>"));
    
        //效果同
        //      Action<int> action = new Action<int>(AddFive);
        //      list.ForEach(action);
        //list.ForEach(delegate(int i)
        //{
        //    HttpContext.Current.Response.Write((i + 5).ToString() + "<br/>");
        //});
    }
    
    public static void AddFive(int i)
    {
        HttpContext.Current.Response.Write((i + 5).ToString() + "<br/>");
    }

    结果:

    12
    11
    15
    6
    7
    8
    9
    10
    13

  • 相关阅读:
    HDU 1114 Piggy-Bank
    HDU 2955 Robberies
    NTOJ 290 动物统计(加强版)
    POJ 3624 Charm Bracelet
    HDU 2602 Bone Collector
    POJ 1523 SPF(无向图割顶)
    HDU 5311 Hidden String
    HDU 1421 搬寝室
    HDU 1058 Humble Numbers
    POJ 3259 Wormholes(spfa判负环)
  • 原文地址:https://www.cnblogs.com/oneword/p/1814020.html
Copyright © 2011-2022 走看看