C#问题,对新手来说有点难,高手来答。
答案:2 悬赏:50 手机版
解决时间 2021-03-09 12:07
- 提问者网友:趣果有间
- 2021-03-08 19:04
C#问题,对新手来说有点难,高手来答。
最佳答案
- 五星知识达人网友:迷人又混蛋
- 2021-03-08 19:35
。。。 根本用不着if 判断
反射全解决了
class Program
{
static void Main(string[] args)
{
int a = new Random(12312).Next(1, 10); //最小能取1最大取9
int b = new Random(17611).Next(1, 10);
DoEvent(a, b);
}
public static void DoEvent(int A, int B)
{
string tocall = "Evenet" + A.ToString() + "_" + B.ToString();
Foo myffoo = new Foo();
var m = myffoo.GetType().GetMethod(tocall);
m.Invoke(myffoo, new object[] { "OK" });
}
}
public class Foo
{
public void Evenet1_1() { // ...
}
public void Evenet1_2() { //...
}
//....
public void Evenet9_8() { //...
}
public void Evenet9_9() { //...
}
}
反射全解决了
class Program
{
static void Main(string[] args)
{
int a = new Random(12312).Next(1, 10); //最小能取1最大取9
int b = new Random(17611).Next(1, 10);
DoEvent(a, b);
}
public static void DoEvent(int A, int B)
{
string tocall = "Evenet" + A.ToString() + "_" + B.ToString();
Foo myffoo = new Foo();
var m = myffoo.GetType().GetMethod(tocall);
m.Invoke(myffoo, new object[] { "OK" });
}
}
public class Foo
{
public void Evenet1_1() { // ...
}
public void Evenet1_2() { //...
}
//....
public void Evenet9_8() { //...
}
public void Evenet9_9() { //...
}
}
全部回答
- 1楼网友:雾月
- 2021-03-08 20:46
什么叫“两边互相对应”追问对不起,问题没说清楚,两个变量 int A和B 随机1-9数字,A和B的组合对应相对应的动作,比如A为1 B为1就执行命令1,如果A为1 B为2执行动作2,以此类推,每一个组合对应一个动作,这种判断怎么写?追答还是没怎么明白。如果你要得到数组的排列组合网上有很多现成的代码
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯