try? 与 try!
Swift 提供了两种简化错误处理的方式:try? 和 try!,适用于不同场景。
try?
try? 将抛出错误的表达式转换为可选值,如果抛错返回 nil,否则返回正常结果。
func loadData() throws -> String {
// 可能抛出错误
return "数据"
}
let result = try? loadData()
if let data = result {
print("加载成功:\(data)")
} else {
print("加载失败")
}
`
适合错误可以忽略或无需详细处理的场景。
try!
try! 表示确定不会抛错,直接执行,如果出错程序将崩溃。
let data = try! loadData()
print(data)
适合错误几乎不可能发生,或愿意让程序因错误崩溃的场景,使用时需谨慎。
总结
try?安全,返回可选,适合容错处理。try!不安全,直接执行,适合确保无错误的代码。
合理选择 try? 和 try!,提高代码健壮性与简洁性。
相关内容
- 什么是 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 中的基本数据类型,包括整数、浮点数、布尔值和字符串,帮助理解变量和常量的数据存储与操作方式。