使用ADT

时间:2015-09-22 01:04:31

标签: java

我正在使用JUnit测试用例来测试我为理性分数ADT创建的方法。我目前正在测试add()方法。我有一个分数为1 / 2,2 / 3,3 / 4,... 9/10的ArrayList,我使用for循环创建了它。然后我创建了一个Rational分数fsum并将其初始化为fractions.get(0);中的值。然后我创建了一个for循环,将ArrayList中的每个其他值添加到Rational分数fsum。在测试断言之后,一切都变得正确,但这似乎不是在fractions ArrayList中添加所有分数的最有效方法。还有另一种更简单的方法来完成同样的事情吗?以下是一些参考代码:

ArrayList<Rational> fractions = new ArrayList<Rational>();
for(int i=1; i<10; i++){
  fractions.add(new RationalC(i, i+1));
}    
Rational sum = new RationalC(17819,2520);    
Rational fsum = fractions.get(0);    
for(int j=1; j<9; j++){
  fsum = fsum.add(fractions.get(j));
}    
assertTrue("Sum of 1/2,2/3,...9/10", fsum.compareTo(sum) == 0);

感谢您提出任何建议

0 个答案:

没有答案