Assertions 与 Preconditions的区别
2019-03-16 本文已影响0人
严青_
首先assert只能用于debug模式,生产环境不会执行
preconditions 生产与开发环境皆可使用,生产环境慎用
assert使用
let age =3
assert(age >=0 ,"年龄不可能小于零")
或者omit后面的信息
assert(age>=0)
如果事先做了判断可以使用 assertionFailure
if(age>=0){
print("年龄大于零")
}else{
assertionFailure("年龄不能小于零")
}
Procondition的使用
和assert类似
precondition(index > 2 , "index <= 2 ")
不打印信息
precondition(index > 2)