【发布时间】:2015-05-25 23:24:02
【问题描述】:
我正在尝试了解如何优雅地使用 scala.util.control.Exception 包。
更具体地说,我想将这段 Java 代码转换为函数式:
public static boolean hostAvailabilityCheck() {
try (Socket s = new Socket(SERVER_ADDRESS, TCP_SERVER_PORT)) {
return true;
} catch (IOException ex) {
/* ignore */
}
return false;
}
我可以在 Scala 中使用 try-catch-finally 做同样的事情,但我正在寻找更实用的方法。另请注意,此 Java 代码使用try-with-resources,因此这意味着此代码无论如何都会关闭套接字(即使发生异常):socket.close()
【问题讨论】:
标签: scala sockets error-handling functional-programming try-with-resources