【发布时间】:2010-03-31 00:03:27
【问题描述】:
String [] A = {"High","Medium","Low"};
String [] B = {"High","Medium","Low"};
String [] C = {"High","Medium","Low"};
String [] D = {"High","Medium","Low"};
String [] E = {"High","Medium","Low"};
String [] F = {"High","Medium","Low"};
JComboBox Ai = new JComboBox(A); JComboBox Bi = new JComboBox(B);
JComboBox Ci = new JComboBox(C); JComboBox Di = new JComboBox(C);
JComboBox Ei = new JComboBox(E); JComboBox Fi = new JComboBox(F);
....
//add the user choice in arrayList
ArrayList<String> a = new ArrayList<String>();
a.add((String) Ai.getSelectedItem());
a.add((String) Bi.getSelectedItem());
a.add((String) Ci.getSelectedItem());
a.add((String) Di.getSelectedItem());
a.add((String) Ei.getSelectedItem());
a.add((String) Fi.getSelectedItem());
已编辑:
设想:
有 6 组(Ai、Bi、Ci、Di、Ei、Fi)可供选择。每组有 3 个子选项(High(H),Medium(M),Low(L))。用户需要在 6 个组中选择一个
选择可以是例如“HHHLLL”或“MMMLLM”或“HHLLMM”等
在不写很多 else if 的情况下检查和匹配用户选择的最佳方法是什么?
例如
if(Ai=="High" && Bi=="High" && Ci=="Low" && Di=="High" && Ei=="Low" && Fi=="Medium") {
System.out.println("Good Choice");
}
谢谢。
【问题讨论】:
-
除非我遗漏了什么,否则是 3^6 而不是 6!排列。
-
这没有任何意义。如果您有 6 个组合框,每个组合框有 3 个选项,那么您的组合数量是 3^6,而不是 6!。您确定给定输入集是否有效的标准是什么?
-
@Cletus:该死,给个男人打字的机会
-
我很好奇你想检查的案例。你有 18 种不同的东西要处理吗?还是只有几种可能的方法?
-
@一次我只比较6而不是18