【发布时间】:2016-09-16 09:38:15
【问题描述】:
我有一个OutputStream 的列表要处理,我知道当我只需要一个时,我可以确保它使用try-with-resources 模式关闭,例如:
try(OutputStream os = new ByteArrayOutputStream()) {
do something...
} catch (IOException e) {
do something...
}
但是如果有他们的列表呢?我可以将列表(ArrayList 或普通数组)放在try 后面的括号中吗?
【问题讨论】:
-
在 try-with-resource 语句中没有明确支持
List。如果你真的想使用try (...) { ... }语法,你必须滚动你自己的AutoCloseable,它包含AutoCloseables的列表。像this 这样的东西可以工作。
标签: java outputstream try-with-resources