每年额外还款额:每年年冲的金额(如果没有年冲,或者是月冲,则填0)
public class MortgageCalculator {
private static final double INITIAL_PRINCIPAL = 800000; // 初始贷款总额
private static final double ANNUAL_RATE = 0.0285; // 年利率
private static final int TOTAL_YEARS = 30; // 贷款总年数
private static final double ANNUAL_EXTRA_PAYMENT = 24000; // 每年额外还款额
// 计算等额本息还款法的每月还款额
private static double calculateMonthlyPayment(double principal, double monthlyRate, int totalMonths) {
double monthlyPayment = principal * monthlyRate * Math.pow(1 + monthlyRate, totalMonths) / (Math.pow(1 + monthlyRate, totalMonths) - 1);
return monthlyPayment;
}
// 主方法,用于计算和打印每年的每月还款额
public static void main(String[] args) {
double principal = INITIAL_PRINCIPAL; // 当前贷款余额
double monthlyRate = ANNUAL_RATE / 12; // 月利率
// 打印每年每月的还款额
for (int year = 1; year <= TOTAL_YEARS; year+