loop中不支持變量重新賦值
Local variable printTotal defined in an enclosing scope must be final or effectively final
需要優化,這樣寫太羅嗦。
JasperPrint printTotal = null;for(JasperPrint print:printList) {if(printTotal==null) {/***************************************/printTotal = print;
/***************************************/}else {List<JRPrintPage> pageList = print.getPages();pageList.forEach((JRPrintPage page)->{printTotal.addPage(page);});}}printList.forEach((JasperPrint print)->{if(printTotal==null) {/***************************************/printTotal = print;
/***************************************/}List<JRPrintPage> pageList = print.getPages();pageList.forEach((JRPrintPage page)->{printTotal.addPage(page);});});
List<JasperPrint> printTotalList = new ArrayList();printList.forEach((JasperPrint print)->{if(printTotalList.size()==0) {printTotalList.add(0, print);}else {List<JRPrintPage> pageList = print.getPages();pageList.forEach((JRPrintPage page)->{printTotalList.get(0).addPage(page);});}});