39 如何在Swift里进行错误处理

简介: 在Swift里进行错误处理

如何在Swift里进行错误处理

错误表示

  • 在Swift中如果我们要定义一个表示错误的类型非常简单,只要遵循Error协议就可以了,我们通常用枚举或结构体来表示错误类型,枚举可能用的多些,因为它能更直观的表达当前错误类型的每种错误细节

image.png

如何抛出错误

  • 函数、方法和初始化器都可以抛出错误。需要在参数列表后面,返回值前面加throws关键字

image.png

image.png

image.png

使用Do-Catch做错误处理

  • 在Swift中我们使用do - catch块对错误进行捕获,当我们在调用一个throws声明的函数或方法时,我们必须把调用语句放在do语句块中,同时do语句块后面紧接着使用catch语句块

image.png

image.png

try?

  • try?会将错误转换为可选值,当调用try?+函数或方法语句时候,如果函数或方法抛出错误,程序不会发崩溃,而返回一个nil,如果没有抛出错误则返回可选值

image.png

try!

  • 如果你确信一个函数或者方法不会抛出错误,可以使用try!来中断错误的传播。但是如果错误真的发生了,你会得到一个运行时错误

image.png

指定退出的清理动作

  • defer关键字:defer block里的代码会在函数retuen之前执行,无论函数使从哪个分支return的,还是有throw,还是自然而然走到最后一行

image.png





目录
相关文章
|
3月前
|
Swift 开发者
在Swift中,错误处理
在Swift中,错误处理
36 6
|
3月前
|
编译器 Go Swift
【Swift开发专栏】Swift中的错误处理与异常捕获
【4月更文挑战第30天】Swift的错误处理机制通过遵循`Error`协议的类型定义和传播错误,以声明式方式捕获和处理问题。本文分为三部分:1) 错误定义与传播,包括自定义错误类型和使用`throw/try/catch`处理;2) 错误处理语法,如必须和可选捕获,以及错误传播;3) 实际应用中的最佳实践,如清晰定义错误、使用错误码和避免滥用错误处理。理解并熟练运用这些机制能提升代码的可靠性和可维护性。
58 1
|
存储 Go Swift
Swift5.0 - day6-错误处理、泛型、高级运算符
Swift5.0 - day6-错误处理、泛型、高级运算符
119 0
Swift5.0 - day6-错误处理、泛型、高级运算符
|
JSON 编译器 Swift
Swift-进阶 06:反射Mirror & 错误处理
Swift-进阶 06:反射Mirror & 错误处理
231 0
Swift-进阶 06:反射Mirror & 错误处理
|
Go Swift iOS开发
Swift5.1—错误处理
Swift5.1—错误处理
125 0
《从零开始学Swift》学习笔记(Day 53)——do-try-catch错误处理模式
<div style="top: 0px;"></div> <span style="font-family:宋体;font-size:14px;"></span><p style="margin: 0cm 0cm 0pt; mso-outline-level: 1;"><span style="font-size:14px;"><strong style="mso-bidi-font-w
1675 0
|
iOS开发
《从零开始学Swift》学习笔记(Day 52)——Cocoa错误处理模式
<span style="font-family:宋体;font-size: 10.5pt; mso-ascii-font-family: Arial; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Arial; mso-bidi-font-family: A
1901 0