在java中,每当满足if条件时,增加变量的值

在java中,每当满足if条件时,增加变量的值,java,if-statement,Java,If Statement,我是java编程的初学者,正在使用GUI生成器。我正在做一个简单的文本置乱类型的程序,我想做的是,每次我从标签列表中输入一个单词,这个单词将被附加到一个文本区域,并且一个初始化为0的特定值增加1;一旦值达到5,将出现一个消息框,并调用另一个JFrame表单。稍后将添加此部分 当我输入第一个单词时,值确实增加了1。现在我的问题是,每次我输入另一个单词,值都保持在1。我正在使用if-else语句,并尝试使用switch语句,但没有效果 这是我在提交按钮中输入的代码 private void btnS

我是java编程的初学者,正在使用GUI生成器。我正在做一个简单的文本置乱类型的程序,我想做的是,每次我从标签列表中输入一个单词,这个单词将被附加到一个文本区域,并且一个初始化为0的特定值增加1;一旦值达到5,将出现一个消息框,并调用另一个JFrame表单。稍后将添加此部分

当我输入第一个单词时,值确实增加了1。现在我的问题是,每次我输入另一个单词,值都保持在1。我正在使用if-else语句,并尝试使用switch语句,但没有效果

这是我在提交按钮中输入的代码

private void btnSubmitActionPerformed(java.awt.event.ActionEvent evt) {
String wordinp = txtfield1.getText();
int v=0;

if (wordinp.equals("bar")){
 txtarea1.append(label1.getText());
 label1.setVisible(true);
 v=v+1;
 labelval.setText(Integer.toString(v));
}

else if (wordinp.equals("bare")){
 txtarea.append(label2.getText());
 label2.setVisible(true);
 v=v+1;
 labelval.setText(Integer.toString(v));
}

else if (wordinp.equals("")||wordinp.equals(" ")){
 JOptionPane.showMessageDialog(null, "Please input word");
}

else {
 JOptionPane.showMessageDialog(null, "Invalid word");
}

if (v==2){
    JOptionPane.showMessageDialog(null, "Congrats!");
}
}

有没有办法让值在我每次输入一个新词时增加?

您已经创建了一个局部变量,您每次都将其初始化为值0,然后以1增加


不要使用局部变量,而是使用实例变量,并且不要在每次输入actionPerformed时将其重置为0。变量v位于方法的局部内部。要计算插入的单词值的数量,需要将变量声明为实例变量或静态变量

静态变量的优点和缺点是,只要加载类,它就会保持该值。对于实例变量,可以计算每个实例插入的字数

private int v;
private static int v;