/// <summary> /// 遍历一个集合,委托当作参数来用 /// </summary> /// <param name="list"></param> /// <param name="del"></param> public void Each(ArrayList list, DelegetFun del) { if (list.Count > 0) { for (int i = 0; i < list.Count; i++) { del(i, list[i]); //委托调用方法 } } }
private void button1_Click(object sender, EventArgs e) { ForeachList each = new ForeachList(); ///声明一个委托 ///each.ShowList是相匹配的参数 DelegetFun delFun = new DelegetFun(each.ShowList); //初始化集合 ArrayList list = new ArrayList(); list.Add("老鸟"); list.Add("大鸟"); list.Add("小鸟"); list.Add("菜鸟"); ///调用each方法,传递 委托参数 each.Each(list, delFun); }