我有
public void mouseClicked(MouseEvent arg0) {
Number rs = new Number();
textField_tf.setText(rs.getRandom());
}
单独的课程
public class Number {
public int getRandom(){
Random rand = new Random();
return rand.nextInt(10) + 1;
}
}
单击按钮时,TextField中不会生成任何内容。我对编程很陌生,但是如果有什么可以指出我出错的地方将会受到赞赏。
答案 0 :(得分:1)
根据您的限制,脱离上下文,代码段,我建议代码甚至无法编译,因为JTextField#setText
期望String
不是{{1} }}
例如......
int
答案 1 :(得分:0)
你需要移动' Ran'在主要之外。它必须是一个类级变量才能使getRan'功能,以便能够访问它。
另外,Java约定是用小写的第一个字母命名该变量。
编辑。该答案适用于该问题的先前版本。
Given the new modification to the question:
public class Number {
public int getRandom() {
Random rand = new Random();
return rand.nextInt(10) + 1;
}
}
这个问题的主要问题是为每个调用声明一个新的Random对象。你应该移动一行' Random rand = new Random()'在功能之外,到了班级。