我正在尝试编写一个简单的程序,该程序从用户那里获取输入的薪水,然后输出该薪水+ 200。 当我输入值时,它显示出要再次输入薪水的问题,然后再次输入数字后,它似乎可以正常工作。 知道为什么吗?
package learning;
import java.util.Scanner;
public class SalaryReadIn {
Scanner scan = new Scanner(System.in);
public SalaryReadIn () {
}
public int getSalary () {
int currentSalary;
System.out.println("Enter your current salary: ");
currentSalary = scan.nextInt();
return currentSalary;
}
public void calculate () {
int currentSalary = getSalary();
int newSalary = currentSalary + 200;
System.out.println("Your new salary is: £" + newSalary);
}
public static void main (String args[]) {
SalaryReadIn salary = new SalaryReadIn();
salary.getSalary();
salary.calculate();
}
}
感谢您的帮助!
答案 0 :(得分:1)
getSalary()两次,然后在第二个方法中调用它。
答案 1 :(得分:1)
正如奥利弗(Oliver)所说的,您两次调用getSalary()
方法。
main(String args[])
方法。然后找到行,
salary.getSalary();
然后JVM进入getSalary()
方法并在那里执行任何操作。
salary.calculate()
行,就进入该方法。在您的calculate()
方法中,该行
int currentSalary = getSalary();
包含再次调用的getSalary()
方法。
在main方法中删除以下代码行。
salary.getSalary();