zoukankan      html  css  js  c++  java
  • 通过委托实现方法数组来代替switch分支语句

    在实际应用中经常会有对一个传入的类型进行检测后, 再通过 switch 进行分类处理, 如下:

    private void Response(CmdType cmd)

    {

          switch(cmd):

            case CmdType.Hello:

               SayHello();

               break;

            case CmdType.GetTime:

               SendTime();

               break;

            case CmdType.Bye:

               SayBye();

               break;

            case CmdType.None:

               NotResponse();

               break;

    }

    可以通过委托简化这些分支. 如下:

     delegate void ResponseDelegate();  // 声明委托

     ResponseDelegate[] response = new ResponseDelegate // 方法数组

    {

       Hello = 0,

       GetTime,

       Bye,

       None

    };

    则 switch 语句可以用如下代替:

    response((int)cmd);

    如此则不是更加清晰醒目呢.

  • 相关阅读:
    JVM系列五:JVM监测&工具[整理中]
    Washing Text Animation
    Cloth
    藤条生长为字母的动画
    音频驱动曲线
    Wood Chipping Text Animation
    融化的文字
    流体文本动画
    Blender Tutorial
    UV纹理+修改器:VertexWeightEdit+修改器:Mask遮罩
  • 原文地址:https://www.cnblogs.com/csMapx/p/2166538.html
Copyright © 2011-2022 走看看