如何根据一个变量来执行相应的方法

Lansie 2008-04-23 05:51:21
比如有个整型变量a
当它的值为1时就执行Object.Test1()
当它的值为2时就执行Object.Test2()
当它的值为3时就执行Object.Test3()
只是打个比方,不要用switch,因为无法预测变量的值

谢谢!
...全文
91 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
virusswb 2008-04-24
  • 打赏
  • 举报
回复
那也要现有固定个数的方法啊,要是传进来一个10,可是只有9个怎么办啊,你说是不是啊
就用switch吧,
lake_cx 2008-04-24
  • 打赏
  • 举报
回复
        private void ExcuteFunc(int a)
{
object o = new object();
Type t = o.GetType();
MethodInfo mi = t.GetMethod("Test" + a.ToString());
if (mi != null) mi.Invoke(o, new object[0]);
}
lake_cx 2008-04-24
  • 打赏
  • 举报
回复
如果传入一个值n,但是没有Test[n]这个方法怎么办?
Lansie 2008-04-24
  • 打赏
  • 举报
回复
谁能说具体点,谢谢了!
Lansie 2008-04-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xiaoniao_28 的回复:]
定义委托
把方法作为参数传递。
[/Quote]

能不能举个例子,谢了
xiaoniao_28 2008-04-23
  • 打赏
  • 举报
回复
定义委托
把方法作为参数传递。
Lansie 2008-04-23
  • 打赏
  • 举报
回复
说的再具体点
比如有个方法ExcuteFunc,参数为a,方法中就执行Object的相应方法
ExcuteFunc(int a)
{
....
Object.Test?();
....
}
ericzhangbo1982111 2008-04-23
  • 打赏
  • 举报
回复
总要有条件把。。
什么情况下执行Object.Test1()
IF ELSE

110,556

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧