我有一个数组列表,可能包含组件或复合材料,每个组件或复合材料都有一个税收字段,我想获得该值.此方法的目的是获得阵列中所有组件和复合材料的总税额list.A组件也可以包含复合.问题是当组件包含复合时,My方法不会获得复合中的值
ArrayList allprinceSubjects = new ArrayList();
public double calculateTaxDueByComponents(){
double totaltaxdue=0;
Iterator iterator = vassalsanddukes.iterator();
while(iterator.hasNext()){
RiruritaniaSubjects vassalandduke=(RiruritaniaSubjects) iterator.next();
totaltaxdue+=vassalandduke.getTaxDue();
vassalandduke.calculateTaxDueByComponents();
}
return totaltaxdue;
}
Run Code Online (Sandbox Code Playgroud)
问题是,当你calculateTaxDueByComponents()
递归调用时,你丢弃结果:
vassalandduke.calculateTaxDueByComponents();
Run Code Online (Sandbox Code Playgroud)
改为
totaltaxdue += vassalandduke.calculateTaxDueByComponents();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
226 次 |
最近记录: |