Autocloseable
は、常にtry-with-resources
で使用する必要があります。少なくともIntellijの検査で示唆されています。だから、 、私は私が何をすべきAutocloseable
を実装Foo
を生成したコードがある場合:私はFoo[]
を返す関数を持っている場合Java8の "Autocloseable"の配列またはコレクション
try (final Foo foo = getFoo()) {
foo.doSomething();
}
しかし、何を?または、引数としてFoo[]
(またはCollection<Foo>
)を受け入れる関数ですか?
try-with-resources
でどうすれば使用できますか? は、以下の機能を見て:
Foo[] getFoos();
doAll(Foo... foo);
私はそれをどのように行うことができますラインdoAll(getFoos())
何かをしたいですか?
のように配列を返すメソッドを使用することはできますが、誰もが道を見ない場合は編集で私の答えを更新してください。 –
あなたは 'for(Foo foo:getFoos())try(Foo toClose = foo){/ * code * /}'を意味しますか?それはうまくいくはずです。 – Holger