誰能告訴我,爲什麽forEach 不可以throw,這樣非常不合理。
不能把問題逐個向上抛出。
當然可以通過全局捕獲異常處理,但是這樣做就會顯得比較囉嗦。
streamMap.forEach((InvoiceItem item,OutputStream out)->{
try {
EmailAttachment attach = new EmailAttachment();
attach.setEsOriginalName("");
attach.setStream(new ByteArrayResource(
IOUtils.toByteArray(StreamHelp.parseOut2In(out))));
} catch (IOException e) {
e.printStackTrace();
}
});