swift guard语句使用
-
gurad语句使用
1. 可选项绑定
- 可以使用可选项绑定来判断可选项是否包含空值
- 如果包含值就自动解包,把值赋给一个临时的常量(let)或变量(var),并返回true,否则返回false
例子:
if let num = Int("42"){
print("转换成功:\(num)")
}else{
print("转换失败")
}
结果:

2. guard语法
guard 条件 else {
//do something...
退出当前作用域
//return,break,continue,throw error
}
- 当guard条件为false时就会执行大括号里面的代码
- 当guard条件为true时,就会跳过guard语句
- guard语句特别适合“提前退出”
- 当使用guard语句进行可选项绑定时,绑定的常量(let)或变量(var)也能在外层作用域中使用
例子:
func login( _ info:[String: String]){
guard let username = info["username"] else{
print("请输入用户名")
return
}
guard let password = info["password"] else{
print("请输入密码")
return
}
print("用户名:\(username),密码:\(password)")
}
var info = ["username":"zhangsan","password":"123456"]
login(info)
结果:
分类:
swift
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库