如何将值关联到函数调用

本文关键字:函数调用 关联 | 更新日期: 2023-09-27 18:02:26

很多次我不得不做类似的事情:

if (value == certainValueA) call functionA()
if (value == certainValueB) call functionB()

我总是这样做的。但是现在我有50多个这样的案例,这种方式似乎很糟糕。

我想用更有效的方法来做这件事。解决方案可能有很好的文档记录,但是到目前为止,我用来查找这些东西的单词组合没有返回任何有趣的结果。

我最需要的是一个指示,什么是调查。

如何将值关联到函数调用

你可以使用一个充满委托的Dictionary;比如:

var dispatch = new Dictionary<TypeOfValue, Action>() {
    { certainValueA, () => functionA() },
    { certainValueB, () => functionB() },
};
TypeOfValue value = // get value here   
dispatch[value]();