我正在创建一个程序,当您输入一个大于18的值时,它会将一个添加到JLabel中,但是,每当我单击该按钮时,该程序都会重置回1,而不是添加一个附加值。

例如,如果我输入另一个大于18的值,则JLabel应该添加一个附加值,因此总数为2 ...

这是我的代码:

int age = Integer.parseInt(jTextField1.getText()); // gets the value from the button click

if(age >= 18){ // determines if it is greater then 18
     int totalOne = 0;
     totalOne = totalOne + 1;
     String totalAgeOne = Integer.toString(totalOne);
     jLabel3.setText(totalAgeOne); // sets the jlabel to One
}else{
     int totalTwo = 0;
     totalTwo = totalTwo + 1;
     String totalAgeTwo = Integer.toString(totalTwo);
     jLabel5.setText(totalAgeTwo);
}

最佳答案

您需要获取JLabel的当前值,然后将其添加一个。

jLabel3.setText(""+(Integer.parseInt(jLabel3.getText())+1));


当前,变量totalOnetotalTwo每次通过条件语句运行时都会重置为0,因为它们是局部变量。

07-25 23:56