(IllegalArgumentException异常)修改程序清单10-2中的Loan类,如果贷款总额、利率、年数小于或等于零,则抛出IllegalArgumentException异常
2021/5/16 20:25:42
本文主要是介绍(IllegalArgumentException异常)修改程序清单10-2中的Loan类,如果贷款总额、利率、年数小于或等于零,则抛出IllegalArgumentException异常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
public class Loan { private double annualInterestRate; private int numberOfYears; private double loanAmount; private java.util.Date loanDate; public Loan() { this(2.5, 1, 1000); } public Loan(double annualInterestRate, int numberOfYears, double loanAmount) { this.annualInterestRate = annualInterestRate; this.numberOfYears = numberOfYears; this.loanAmount = loanAmount; loanDate = new java.util.Date(); judge(); } public void judge() throws IllegalArgumentException{ if(this.loanAmount<=0) { throw new IllegalArgumentException("贷款总额小于等于0!"); } if(this.annualInterestRate<=0) { throw new IllegalArgumentException("利率小于等于0!"); } if(this.numberOfYears<=0) { throw new IllegalArgumentException("贷款年数小于等于0!"); } } public double getAnnualInterestRate() { return annualInterestRate; } public void setAnnualInterestRate(double annualInterestRate) { this.annualInterestRate = annualInterestRate; judge(); } public int getNumberOfYears() { return numberOfYears; } public void setNumberOfYears(int numberOfYears) { this.numberOfYears = numberOfYears; judge(); } public double getLoanAmount() { return loanAmount; } public void setLoanAmount(double loanAmount) { this.loanAmount = loanAmount; judge(); } public double getMonthlyPayment() { double monthlyInterestRate = annualInterestRate / 1200; double monthlyPayment = loanAmount * monthlyInterestRate / (1 - (1 / Math.pow(1+monthlyInterestRate, numberOfYears * 12))); return monthlyPayment; } public double getTotalPayment() { double totalPayment = getMonthlyPayment() * numberOfYears * 12; return totalPayment; } public java.util.Date getLoanDate(){ return loanDate; } }
这篇关于(IllegalArgumentException异常)修改程序清单10-2中的Loan类,如果贷款总额、利率、年数小于或等于零,则抛出IllegalArgumentException异常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-19Excel数据导出课程:初学者必备教程
- 2024-09-19Excel数据导入课程:新手入门指南
- 2024-09-19RBAC的权限管理入门教程
- 2024-09-19如何使用Svg Sprite Icon制作图标
- 2024-09-19uniapp 如何实现点赞后全局更新数据-icode9专业技术文章分享
- 2024-09-19云函数怎么运行wx-server-sdk-icode9专业技术文章分享
- 2024-09-19"dependencies": { "wx-server-sdk": "latest" },是什么意思-icode9专业技术文章分享
- 2024-09-16优化批处理流程:自定义BatchProcessorUtils的设计与应用
- 2024-09-15laravel collect游标批量插入的方法示例-icode9专业技术文章分享
- 2024-09-15怎么修改laravel的中间件 把获取IP改成X-Real-IP-icode9专业技术文章分享