因此,由于动态变量在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];