因此,由于动态变量在Java中已不是问题,并且如果语句非常笨拙,则正在寻求帮助,以将该代码块转换为更简洁的代码块。

我查看了哈希图,但它们似乎不太正确,不过很可能我误解了它们。

public String m1 = "Name1";
public String m1ip = "192.1.1.1";
public String m2 = "Name2";
public String m2ip = "192.1.1.1";
public String req;
public String reqip;


...剪一些代码...

if (requestedMachine == 1)
{ req = m1; reqip = m1ip;}
else if (requestedMachine == 2)
{ req = m2; reqip = m2ip;}
else if (requestedMachine == 3)
{ req = m3; reqip = m3ip;}
else if (requestedMachine == 4)
{ req = m4; reqip = m4ip;}
else if (requestedMachine == 5)
{ req = m5; reqip = m5ip;}


requestMachine将是一个整数,该整数定义应为req&reqip分配哪些值。

提前致谢。

最佳答案

定义一个Machine类,其中包含一个name和一个ip字段。创建一个机器数组。访问位于索引requestedMachine(如果数字从1开始,则为requestedMachine - 1)的计算机:

Machine[] machines = new Machine[] {
    new Machine("Name1", "192.1.1.1"),
    new Machine("Name2", "192.1.1.1"),
    ...
}
...

Machine machine = machines[requestedMachine - 1];

07-24 09:16