自定义错误类型
Swift 允许开发者自定义错误类型,通过枚举实现更清晰的错误分类和处理。
定义自定义错误
创建符合 Error 协议的枚举,列举具体错误情况:
enum LoginError: Error {
case invalidUsername
case invalidPassword
case networkUnavailable
}
`
抛出自定义错误
在函数中使用 throw 抛出对应错误:
func login(username: String, password: String) throws {
guard username == "admin" else {
throw LoginError.invalidUsername
}
guard password == "123456" else {
throw LoginError.invalidPassword
}
// 模拟网络不可用
throw LoginError.networkUnavailable
}
处理自定义错误
使用 do-catch 捕获并处理错误:
do {
try login(username: "user", password: "123456")
} catch LoginError.invalidUsername {
print("用户名无效")
} catch LoginError.invalidPassword {
print("密码错误")
} catch LoginError.networkUnavailable {
print("网络不可用")
} catch {
print("未知错误")
}
自定义错误类型提高错误表达的准确性和代码可维护性。
相关内容
- 什么是 Swift? Swift 是 Apple 推出的现代编程语言,专为 iOS、macOS、watchOS 与 tvOS 应用开发而设计,语法简洁、安全高效,广泛应用于移动开发与...
- Swift 与 Objective-C 的比较 Swift 与 Objective-C 都是 Apple 推出的开发语言,前者强调安全与现代化,后者历史悠久且成熟。了解两者异同有助于更好地选择开发工具。
- 安装 Xcode 与 Playground 本章介绍如何安装 Xcode 和使用 Swift Playground 进行基础练习,适合 Swift 初学者快速上手,无需搭建复杂环境即可体验代码编写与运行。
- Swift 的发展历史和现状 Swift 作为 Apple 推出的现代编程语言,经历了快速的发展和演进,现已成为 iOS、macOS 等平台主流开发语言,拥有活跃的社区和广泛的应用。
- 变量与常量 本章介绍 Swift 中变量与常量的定义与使用,帮助理解数据存储与修改的基本概念,是掌握 Swift 编程的基础。
- 数据类型 本章讲解 Swift 中的基本数据类型,包括整数、浮点数、布尔值和字符串,帮助理解变量和常量的数据存储与操作方式。