【发布时间】:2021-12-22 06:00:06
【问题描述】:
if 语句的内容与我的问题无关,我已尽可能多地删除了与我的问题无关的内容。
我真的很难理解我需要做什么才能让 getNetSalary 方法返回 netSalary 变量的值。
我认为我需要实例化一个对象以使其具有“可返回”的值,但无论我阅读了多少 youtube 视频和其他论坛帖子,我都无法理解它。
package mortgage;
import java.util.Scanner;
public class MortgageDecision {
public static void main(String[] args) {
double grossSalary;
Scanner input = new Scanner(System.in);
System.out.print("Gross Annual Salary: £");
grossSalary = input.nextDouble();
}
public static double getNetSalary(double grossSalary) {
double netSalary;
double taxFreeAllowance = 12500;
double taxFreeDeduction = 0;
double tax = 0;
if (grossSalary > 100000) {
taxFreeDeduction = (grossSalary - 100000) / 2;
}
if (taxFreeDeduction > 12500) {
taxFreeDeduction = 12500;
}
taxFreeAllowance = taxFreeAllowance - taxFreeDeduction;
if (grossSalary <= 50000) {
tax = (grossSalary - taxFreeAllowance) * 0.2;
} else if (grossSalary <= 100000) {
tax = ((grossSalary - 50000) * 0.3)
+ ((grossSalary - taxFreeAllowance
- (grossSalary - 50000)) * 0.2);
} else if (grossSalary > 100000) {
tax = ((grossSalary - 100000) * 0.4) + 15000
+ ((50000 - taxFreeAllowance) * 0.2);
}
if (tax < 0) {
tax = 0;
}
netSalary = grossSalary - tax;
return netSalary;
}
【问题讨论】:
-
你没有打电话给
getNetSalary。这是你要问的问题吗? -
这可能是我出错的地方,也是我应该问的。我刚刚在我的主要方法中添加了以下行:netSalary = getNetSalary();仍然没有做我期望/希望的事情
-
“没有按照我的预期做”并不足以解释您的问题。