在我的地图中,我每月保存一个Excel文件中的值。现在,我想创建另一个地图,其中所有月度值都添加为年值。
我已经创建了一个全局变量。我试图将每月值存储在此变量中。但是我的尝试没有用。
在arryList中,包含月度值和年值的地图应存储一次。
这是我当前的代码,该代码从Excel文件中提取数据并将其传输到地图:
public List getResultFromExcelFile() throws Exception {
ArrayList resultMonthly = new ArrayList<>();
int row = 526;
// monthly
for (int i = 32; i < 32 + 12; i++) {
if (getWorkBook().getNumber(3, i) != 0) {
for (int k = 0; k < 461; k++) {
HashMap<String, Object> resultSetMonthly = new HashMap<>();
if (getWorkBook().getNumber(row, i) != 0) {
resultSetMonthly.put("db-nr", getWorkBook().getNumber(row, 1));
resultSetMonthly.put("name", getWorkBook().getText(row, 2));
resultSetMonthly.put("mandantKagId", getWorkBook().getNumber(row, 3));
resultSetMonthly.put("period", getWorkBook().getNumber(4, i));
resultSetMonthly.put("amount", getWorkBook().getNumber(row, i));
resultMonthly.add(resultSetMonthly);
}
row++;
}
row = 526;
}
}
return resultMonthly;
}
我尝试过这样的事情:
private Map sumMonthlyResultToYearlyResult(List resultMonthly) {
Map<String, Object> yearlyResult = new HashMap<>();
Map monthlyResult = (Map) resultMonthly.get(0);
double sumAmount = 0;
for (int i = 0; i < monthlyResult.size(); i++) {
double monthlyAmount = (double) monthlyResult.get("amount");
sumAmount + monthlyAmount;
...
...
...
}
return yearlyResult;
}
谁能告诉我如何将月度值加到年度值上?也很高兴使用Java流API