Java JComboBox。我做错了什么?
我的代码将Java JComboBox。我做错了什么?,java,methods,jcombobox,Java,Methods,Jcombobox,我的代码将c的值返回为空!怎么了 我希望将索引的值添加到字符串c,但它没有发生,甚至是System.out.println的第一个代码(“c:+c+”A:+A+”B:+B”)将所有变量返回为0 public String getData(){ String c ; c = null; int a = cb1.getSelectedIndex(); int b = cb2.getSelectedIndex(); System.out.println("C: "+c+" A: "+a+"
c
的值返回为空!怎么了
我希望将索引的值添加到字符串c
,但它没有发生,甚至是System.out.println的第一个代码(“c:+c+”A:+A+”B:+B”)代码>将所有变量返回为0
public String getData(){
String c ;
c = null;
int a = cb1.getSelectedIndex();
int b = cb2.getSelectedIndex();
System.out.println("C: "+c+" A: "+a+" B: "+b);
if (a == 1 && b == 1) {
c=""+a;
} else if (a == 1 && b == 2) {
c=""+a;
} else if (a == 2 && b == 1) {
c=""+a;
} else if (a == 2 && b == 2) {
c=""+a;
} else if (a == 3 && b == 1) {
c=""+a;
} else if (a == 4 && b == 1) {
c=""+a;
} else if (a == 4 && b == 2) {
c="";
} else if (a == 5 && b == 1) {
c=""+a+""+b;
} else if (a == 5 && b == 2) {
c=""+a+""+b;
} else if (a == 6 && b == 1) {
c=""+a+""+b;
} else if (a == 7 && b == 1) {
c=""+a+""+b;
} else if (a == 8 && b == 1) {
c=""+a+""+b;
} else if (a == 8 && b == 2) {
c=""+a+""+b;
} else if (a == 8 && b == 3) {
c=""+a+""+b;
}
System.out.println("C: "+c+" A: "+a+" B: "+b);
return c;
}
我已将if{}else{if{}
更改为if{}else if{}
public String getData(){
String c ;
c = null;
int a = cb1.getSelectedIndex();
int b = cb2.getSelectedIndex();
System.out.println("C: "+c+" A: "+a+" B: "+b);
if (a == 1 && b == 1) {
c=""+a;
} else if (a == 1 && b == 2) {
c=""+a;
} else if (a == 2 && b == 1) {
c=""+a;
} else if (a == 2 && b == 2) {
c=""+a;
} else if (a == 3 && b == 1) {
c=""+a;
} else if (a == 4 && b == 1) {
c=""+a;
} else if (a == 4 && b == 2) {
c="";
} else if (a == 5 && b == 1) {
c=""+a+""+b;
} else if (a == 5 && b == 2) {
c=""+a+""+b;
} else if (a == 6 && b == 1) {
c=""+a+""+b;
} else if (a == 7 && b == 1) {
c=""+a+""+b;
} else if (a == 8 && b == 1) {
c=""+a+""+b;
} else if (a == 8 && b == 2) {
c=""+a+""+b;
} else if (a == 8 && b == 3) {
c=""+a+""+b;
}
}
请尝试此代码
你错过了一些其他条件 您的第一个systemoutprintln c必须为null…如果未选择任何内容,则c也为null。。。
每次选择更改时,您也必须调用此方法
尽量不要写
else{
if{
} else{
if{...
试着写一篇好文章
else if{...}
else if{...}
我不明白你的“如果/否则”。这不也是一回事吗?
我认为,你应该关注场景的预期结果,然后再构建你的决策点,而不是所有可能的输入组合
public String getData(){
String c ;
c = null;
int a = cb1.getSelectedIndex();
int b = cb2.getSelectedIndex();
System.out.println("C: "+c+" A: "+a+" B: "+b);
if (a <= 4 && b != 2)
{
c=""+a;
}
else if (a >= 5)
{
c=""+a+""+b;
}
else
{
c="";
}
}
公共字符串getData(){
字符串c;
c=零;
int a=cb1.getSelectedIndex();
int b=cb2.getSelectedIndex();
系统输出打印项次(“C:+C+”A:+A+”B:+B);
如果(a=5)
{
c=“”+a+”+b;
}
其他的
{
c=“”;
}
}
当只有3种不同的结果时,代码中通常只能有2个决策点。当您觉得需要创建那么多嵌套的if语句时,通常情况下,这表明您需要重新构造代码在连接整数变量之前,必须将其转换为字符串。例如:
c=""+a.tostring();
你的结构真的很糟糕,请重构并再次发布,好吗?比发现你的问题更容易你为什么不试着把这个循环一下@Nabeel你知道关于if的else,对吗?与其使用连续的if-else,不如使用switch@Nabeel您还使用变量c执行SysOut,该变量为null!不,这不是必需的,如果a是int,c是字符串,则c=”“+a工作。而且“int”没有toString()方法,只有Integer有。