【发布时间】:2015-06-11 18:07:32
【问题描述】:
我正在使用scala-arm 库来自动释放/关闭资源(例如InputStream)。
但问题是下面的代码返回ExtractableManagedResource[Int],而不仅仅是我想要的Int。
val result = for(responseStream <- managed(response.getResponseBodyAsStream)) yield {
val localResult: Int = 1
localResult
}
// result is of type ExtractableManagedResource[Int]
是否有任何选项可以返回Int 并将包装结果克服到ExtractableManagedResource?
编辑:我知道我可以将 result 变量声明为 var 并从 for-comprehension 内部分配给它,但我想要更多的 scala 惯用方式,即不使用 var
【问题讨论】: