我是 Java 新手,我到处找,但我没有得到一个简单的概念。
我将两个变量声明为 int。我希望这两个变量对所有方法都是全局的。在我的第一种方法中,我想从用户输入中获取第一个变量的值。然后我希望该新值可用、识别并由第二种方法调用。但是,每次第一种方法结束时,变量的值都会被设置回0,而第二种方法在第一种方法输入中找不到用户给它的值。我究竟做错了什么?我需要以不同的方式声明我的变量吗?我需要以不同的方式声明我的方法吗?谢谢你的帮助!
import acm.program.*;
public class FindRange extends ConsoleProgram {
int num1;
int num2;
public void run() {
println("This program finds the largest and smallest numbers.");
getNum1();
getNum2();
// getNumUntilZero();
}
public void getNum1() {
int num1 = readInt("?:");
if (num1 == 0) { //do not accept 0 for first number
println("Please try again without 0.");
getNum1();
}
}
public void getNum2() {
int num2 = readInt("?:");
if (num2 == 0) { //if 2nd number is 0, print 1st num as high and low nums
println("Biggest number:" + num1);
println("Smallest number:" + num1);
}
}
}