8.3.3 捕获错误
2025年09月26日
8.3.3 捕获错误
上例中,错误被抛出,程序就终止运行了,那么开发者应该如何捕获错误呢?Swift提供了一种do-catch的语句来进行错误的捕获,与此同时,do的代码块中必须有一次try的调用。示例如下:
动手写8.3.2 CatchError
控制台输出如下:
do-catch中一定要有throws的函数,而throws的函数调用前需要加try,所以do-catch中就一定会有try。本例中,catch是专门用来捕获ArrayError.IndexOutOfRange这个错误的,并且将错误的数组和索引绑定到常量array和index中。如果捕获到异常,将会打印出异常时的数组个数和索引,方便开发者进行错误原因的追溯。而do中则是正常的代码逻辑,如果调用safeGetElement函数成功获取到元素,则将元素打印出来;如果调用时抛出ArrayError.IndexOutOfRange错误,将会被catch捕获,而不会终止应用程序。