断言会在运行时判断一个逻辑条件是否为 true
。
如果条件判断为 true
,代码运行会继续进 行;
如果条件判断为 false
,代码执行结束,你的应用被终止。
来看个触发断言示例
let age = -1
assert(age >= 1, "一个人的年龄必须大于0") // 因为 age < 0,所以断言会触发
// assert(age > 0, "一个人的年龄必须大于0") // 因为 age <= 0,所以断言会触发
如果你不需要断言信息,可以这样写
let age = -1
assert(age >= 1) // 因为 age < 0,所以断言会触发
以下为可正常运行的代码
let age = 60
assert(age >= 1, "一个人的年龄必须大于0") // 断言不触发,可正常运行后面的代码
print("done")