日期:2014-05-20  浏览次数:20665 次

简化以下代码 谢谢
Java code
    son1_income.setMoney1(incomeService.getMonthTotalMoney(companyBackendId, p.getId(), Integer.valueOf(incomeId), -1, year, 1));
                    son1_income.setMoney2(incomeService.getMonthTotalMoney(companyBackendId, p.getId(), Integer.valueOf(incomeId), -1, year, 2));
                    son1_income.setMoney3(incomeService.getMonthTotalMoney(companyBackendId, p.getId(), Integer.valueOf(incomeId), -1, year, 3));
                    son1_income.setMoney4(incomeService.getMonthTotalMoney(companyBackendId, p.getId(), Integer.valueOf(incomeId), -1, year, 4));


------解决方案--------------------
son1_income.setMoney1(
incomeService.getMonthTotalMoney(
companyBackendId, p.getId(), Integer.valueOf(incomeId), -1, year, 1)

);
这代码写得蛮工整的,还简化啊, 就是往son1_income对象setMoney,这个对象有4个money属性。

setMoney的值是incomeService.getMonthTotalMoney,incomeService所对应的类的方法
getMonthTotalMoney的返回值。

companyBackendId, p.getId(), Integer.valueOf(incomeId), -1, year, 1是方法的参数。


------解决方案--------------------
总共也就四行,如果不修改函数结构的话,没啥简化空间,也没太大简化意义。

比如将其改为一个循环搞定,但对于setMoney1~setMoney4,则需要用反射处理,也简化不到哪里去,除非你会有setMoney200啥的。。。