复利计算器4.0JUnit
#因为是用IDEA首次写unit test,所以也是麻烦多多,于是就只写了一个函数的测试....
##需要测试的代码如下
public class Calculator {
// 本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:
public static double calculatingAmount(double capital,double rate,int year)
{
return capital*(Math.pow((1+rate),(double)year));
};
// 如果按照单利计算,本息又是多少呢
public double calculatingAmountForSingle(double capital, double rate, int year)
{
return capital*(1+(rate*year));
};
// 假如30年之后要筹措到300万元的养老金,平均的年回报率是3%,那么,现在必须投入的本金是多少呢
public double calculatingCapital(double amount, double rate, int year)
{
return amount/(Math.pow((1+rate),(double)year));
};
// 利率这么低,复利计算收益都这么厉害了,如果拿100万元去买年报酬率10%的股票,若一切顺利,过多长时间,100万元就变成200万元呢
public int calculatingYear(double capital,double rate,double count)
{
return (int)(Math.log(1+rate)/Math.log(count/capital));
};
// 如果我希望在十年内将100万元变成200万元,应该找到报酬率在多少的投资工具来帮助我达成目标
public double calculatingRate(double capital,int year,double acount)
{
return Math.pow((acount/capital),(double)(1/year))-1;
};
// 如果想在5年后本金翻倍,报酬率就应至少为多少才行呢
public double calculatingRateInDoubleReturn()
{
return this.calculatingRate(100,5,200);
};
// .如果每年都将积蓄的3万元进行投资,每年都能获得3%的回报,然后将这些本利之和连同年金再投入新一轮的投资,那么,30年后资产总值将变为多少
public double calculatingAmountInNorm(double normCapital,double rate,int year){
double acount;
acount=normCapital;
for (int i=0;i<year;i++)
{
acount+=normCapital+acount*rate;
}
return acount;
};
// 如果向银行贷款10万元,年利率6.5%,期限为10年,那么每月等额本息还款多少
public double[][] calculatingInterest(double capital,double rate,int year)
{
double[][] interest=new double[year][12];
for (int i=0;i<year;i++)
{
for (int j=0;j<12;j++)
{
interest[i][j]=capital*Math.pow(rate+1,(double)(i))*rate;
}
}
return interest;
};
}
然后是测试代码
public class CalculatorTest {
@org.junit.Test
public void testCalculatingAmount() throws Exception {
assertEquals(103.0301,Calculator.calculatingAmount(100.0301,0.01,3),0.1);
}
@org.junit.Test
public void testCalculatingAmountForSingle() throws Exception {
}
@org.junit.Test
public void testCalculatingCapital() throws Exception {
}
@org.junit.Test
public void testCalculatingYear() throws Exception {
}
@org.junit.Test
public void testCalculatingRate() throws Exception {
}
@org.junit.Test
public void testCalculatingRateInDoubleReturn() throws Exception {
}
@org.junit.Test
public void testCalculatingAmountInNorm() throws Exception {
}
@org.junit.Test
public void testCalculatingInterest() throws Exception {
}
}
第一个函数而已,其他的都是自动生成的,先熟悉下IDEA环境下JUnit的使用,以后会添加真正的测试的。
下面是结果

#总结:浪费了很多时间,主要是百度中文搜索技术文很差,然后用了bing,看英文看了很...在一些小问题卡住很久,以后解决这种小问题还是需要不要没有思考的百度,很浪费时间,只是原地打转,百度不会什么都告诉你!还有就是学好英文。
附github地址https://github.com/LinJiTuan/BankCalculator
复利计算器4.0JUnit的更多相关文章
- 复利计算器(4)——jQuery界面美化、自动补全
一.分工 这次终于可以跟小伙伴合作了,经过讨论,我负责界面的美化和输入框自动补全,小伙伴擅长安卓,于是将复利计算器弄成app的任务就交给了小伙伴.为了我们两人团队,我们都好奋斗哈哈哈!! 二.界面美化 ...
- 复利计算器v1
public class MainFrame extends JFrame { /** * 文本框 */ private TextField[] texts = new TextField[5]; / ...
- java版复利计算器升级
github地址:https://github.com/iamcarson/Carson 伙伴:彭宏亮 学号:201406114148 与伙伴工作帅照: 本次升级的地方: 1.改善了界面显示,让界面整 ...
- 0406.复利计算器5.0版-release
复利计算器5.0-release 目录 项目简介 Github链接推送 客户需求 新增需求分析 项目设计 效果演示 操作说明 程序结构 结对分工 合作照片 总结 1.项目简介 项目名称:复利计算器 目 ...
- 单利 复利计算器程序1.0 2.0 3.0 [ 合 ] 之 WEB
对单复利计算器程序进行改进 更新为网页版的. 界面不太美观 请谅解 由于时间问题暂未完善好! 计算部分的主要源代码:
- 复利计算器app发布
复利计算器app发布 抱歉:由于无法实现服务端的持续开启,发布的app仅为简单的单机版,暂时舍弃了c/s版本的一些功能,如:投资动态管理功能. 应用详情博客:请点击这里 apk下载地址1(百度手机助手 ...
- 复利计算器4.0之再遇JUnit
复利计算器4.0之再遇JUnit 前言 虽然之前的复利计算器版本已经尝试过使用JUnit单元测试,但由于没有系统性地学习过JUnit的使用,用得并不好,主要问题表现在测试的场景太少,并没有达到测 ...
- 0329 复利计算器5.0 Juint单元测试 组员 254列志华 253韩麒麟
一.主要功能与需求分析 1.本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:按复利计算公式来计算就是:1,000,000×(1+3%)^30 2.如果按照单 ...
- 复利计算器(软件工程)及Junit测试———郭志豪
计算:1.本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:按复利计算公式来计算就是:1,000,000×(1+3%)^30 客户提出: 2.如果按照单利计算 ...
随机推荐
- VSCode编辑器编写Python代码
如何用VSCode愉快的写Python https://code.visualstudio.com/ 在学习Python的过程中,一直没有找到比较趁手的第三方编辑器,用的最多的还是Python自带 ...
- SignalR (二)
在上节中,我们已经初步对 SignalR 进行了了解,这一节我们将做一个SignalR Demon,具体的步骤如下: 1. 创建一个 mvc 4 web 应用程序,并选择 Basic 2. 创建一个 ...
- OpenCL 双调排序 CPU 版
▶ 学习了双调排序,参考(https://blog.csdn.net/xbinworld/article/details/76408595) ● 使用 CPU 排序的代码 #include <s ...
- windows巡检
参考网站: http://www.jb51.net/os/windows/525017.html 系统自带工具巡检 : 先说说如何检查系统健康度的方法,Win+R只有只要输入一个命令: perf ...
- sqoop2的安装配置
1.下载 wget http://mirror.bit.edu.cn/apache/sqoop/1.99.7/sqoop-1.99.7-bin-hadoop200.tar.gz 2.解压 tar -z ...
- 25. instr用法
很多时候,我们要进行字符串匹配,在SQL语句中,我们通常使用like来达到我们搜索的目标.但经过实际测试发现,like的效率与instr函数差别相当大.下面是一些测试结果: select instr( ...
- HTML5 Canvas ( 图形变换, 升级版的星空 ) translate, rotate, scale
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- leetcode179
class Solution { public: string largestNumber(vector<int>& nums) { int n=nums.size(); vect ...
- leetcode412
public class Solution { public IList<string> FizzBuzz(int n) { var list = new List<string&g ...
- as3 文档类判断是否被加载
if (!stage) { trace(("被加载->this.parent:" + this.parent)); }else { trace(("单独打开-> ...