zoukankan      html  css  js  c++  java
  • CLR Via CSharp----------Delegate&Lambda

    CLR Via CSharp----------Delegate&Lambda

     

    1. There are some simple samples of how to use the delegate。

     1     class Program
     2     {
     3         static void Main(string[] args)
     4         {
     5 
     6             String[] names = { };
     7 
     8             Counter(1, 3, null);
     9             Counter(1, 4, Conso);
    10             Counter(1, 4, Mess);
    11 
    12             Program p = new Program();
    13             Counter(1, 4, new FeedBack(p.Conso2));
    14 
    15             FeedBack f1 = new FeedBack(Conso);
    16             FeedBack f2 = new FeedBack(Mess);
    17 
    18             FeedBack f = null;
    19             f += f1;
    20             f += f2;
    21             Counter(1, 30, f);
    22         }
    23 
    24         private static void Counter(int from, int to, FeedBack fb)
    25         {
    26             for (int i = from; i < to; i++)
    27                 if (fb != null)
    28                     fb(i);
    29         }
    30 
    31         private static void Conso(int value)
    32         {
    33             Console.WriteLine("Item=" + value.ToString());
    34         }
    35 
    36         private void Conso2(int value)
    37         {
    38             Console.WriteLine("Item=" + value.ToString());
    39         }
    40 
    41         private static void Mess(int value)
    42         {
    43             MessageBox.Show("Item=" + value.ToString());
    44         }
    45 
    46         private void Mess2(int value)
    47         {
    48             MessageBox.Show("Item=" + value.ToString());
    49         }
    50     }

    2. There are much better practices.

    1             String[] names = { "Jeff", "Kristin", "Aidan", "Grant", "HaifengCai" };
    2             Char charToEnd = 'a';
    3             names = Array.FindAll(names, name => name.IndexOf(charToEnd) >= 0);
    4             names = Array.ConvertAll(names, name => name.ToUpper());
    5             Array.ForEach(names, Console.WriteLine);
  • 相关阅读:
    容易混淆的JavaScript基础知识之语法部分
    CSS入门基础学习一
    HTML基础入门学习准备篇
    HTML基础入门学习
    数据结构绪论
    CSS入门基础学习二
    JavaScript学习第一篇
    CSS/CSS3常用的样式
    vs 发生异常时不能被捕获
    c# 反射
  • 原文地址:https://www.cnblogs.com/HaifengCai/p/4084030.html
Copyright © 2011-2022 走看看