Excel中计算月供的公式名叫PMT,有关这个公式的详细描述如下:
http://office.microsoft.com/zh-cn/excel-help/HP010342769.aspx
下图是 Excel 中使用这个公式的一个简单说明。
Java 中实现这个公式可以用下面函数
注意,这个函数的所有输入参数都是double类型的。包括支付的月份数,否则计算出来跟Excel计算出来的值不一致。
/**
* 计算月供
* @param rate 年利率 年利率除以12就是月利率
* @param term 贷款期数,单位月
* @param financeAmount 贷款金额
* @return
*/
private double PMT(double rate,double term,double financeAmount)
{
double v = (1+(rate/12));
double t = (-(term/12)*12);
double result=(financeAmount*(rate/12))/(1-Math.pow(v,t));
return result;
}
使用方法:
double vv = PMT(0.1,30,100000);
Excel这个函数更复杂的在Java下实现可以参看下面几篇文章
http://stackoverflow.com/questions/5352165/pmt-function-payment-type