zoukankan      html  css  js  c++  java
  • Dictionary 存储函数,方法

    这段代码示例,我想大家应该经常简单用到,用来对一个数据进行不同的处理,但是总有种感觉是不是好像有点,怎么说呢,多余?

    public static void Main(string[] arg)
    {
        string param = "test";
        if (param.Contains("dte"))
        {
            FunA();
        }
        else if (param.Contains("es"))
        {
            FunB();
        }
    }
    public static void FunA()
    {
        Console.WriteLine("A方法调用");
    }
    public static void FunB()
    {
        Console.WriteLine("B方法调用");
    }

    那么我们看看下面这一段

    private static readonly Dictionary<string, Action> test = new Dictionary<string, Action>() { { "dte", FunA }, { "es", FunB } };
    public static void FunA()
    {
        Console.WriteLine("A方法调用");
    }
    public static void FunB()
    {
        Console.WriteLine("B方法调用");
    }
    public static void Main(string[] arg)
    {
        string param = "test";
        foreach (var item in test)
        {
            if (param.Contains(item.Key))
            {
                item.Value();
                break;
            }
        }
    }

    是不是一下头上的灯泡亮了,任你 else if 再多,我只用在 Dictionary 追加就行了。

  • 相关阅读:
    python17 .导模块的细节 包的概念 包中的相对导入语法 包的管理 _init_py文件的使用
    @lazy注解
    @Scope注解
    @ComponentScan 注解
    Spring IOC
    Spring体系
    java守护线程
    java线程优先级
    java线程生命周期
    java线程中start和run的区别
  • 原文地址:https://www.cnblogs.com/carlows/p/15250303.html
Copyright © 2011-2022 走看看