!和?
!强行解包 必须有值 如果self 被释放 值为空会崩溃 一般是在需要拿出值计算
?可选择解包 可以有值 可以没有值
闭包的循环引用
switf
1都是弱 引用 注意解包
{ [weak self] in
print(self?.view)
}
2
weak var myself = self
{
print(myself.view)
}
3
{
[unowned self ] in 不拥有 对面释放 指针指向地址不变 在调用变成野指针 (不推荐)
print(self.view)
}
文本转数字
//空值是给个空字符穿
guard let number = Int(filed?.text ?? "") else{
print(“必须是数字”)
}