我是scala编码的新手,如果scala代码的一部分失败了,我需要执行一个函数。我尝试过使用try/catch,但是在catch{}块中我无法调用func1()函数。任何建议都会有帮助。谢谢。
object obproc {
def main(args: Array[String]): Unit = {
code1
code2
code3
def func1(a:String) {
//some functionality
}
// if code2 fails I have to execute the function as func1("code failed")
}
}
1条答案
按热度按时间jfewjypa1#
如果您只是想捕获
code1
打电话给我func1()
,可以简单到:但这是一个粗糙的实现。如果
func1()
失败?正如其他人在评论中所说的,值得考虑的是如何在代码库中表达和封装故障。以及它们是如何组成的。
如果我们使用
Try
为了概括我们的失败,我们可以这样写:然后在应用程序的最顶端运行它: