下面我尝试将String temp的值赋给String test,以便可以在actionlistener类之外进行处理。我得到一个错误,变量必须是最终的或有效的最终。有没有办法在类外部获取临时值,以便可以使用它?
String test;
textField.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
temp = UserScreen.textField.getText();
UserScreen.messageAppend(temp);
test = temp;
}
});
答案 0 :(得分:0)
只有在动作发生时才会调用actionListener,所以在函数中声明它之后,String测试将为null。
您可以将字符串测试声明为类的成员变量,然后再重复使用。
答案 1 :(得分:0)
为了使其起作用,你应该声明
String test;
作为类变量而不是那里。
另一种选择是将其声明为最终版,但这在你的代码中没有任何意义,因为一旦声明你就不能改变它的价值......
所以选项1就是你的情况