Scala异常处理示例
时间:2020-02-23 14:41:46 来源:igfitidea点击:
Scala异常处理类似于Java中的异常处理。
但是,Scala不支持检查的异常。
Scala中的抛出异常
只需创建一个异常对象,然后使用throw
关键字将其抛出即可。
throw new ArithmeticException
Scala尝试捕获块
Scala允许我们尝试/捕获异常并使用case块执行模式匹配。
考虑下面的示例。
object Arithmetic { def main(args: Array[String]) { try { val z = 4/0 } catch { case ex: ArithmeticException => { println("Cannot divide a number by zero") } } } }
其中我们试图将数字除以零,然后在catch块中捕获算术异常。
匹配算术异常的情况,并显示"不能将数字除以零"的语句。
Scala的finally子句
无论表达式/程序是否提前终止或者成功执行,finally子句都将执行代码。
考虑下面的示例。
object Arithmetic { def main(args: Array[String]) { try { val z = 4/0 } catch { case ex: ArithmeticException => { println("Cannot divide a number by zero") } } finally { println("This is final block") } } }