Swift语法中关于"!"和"?"的解析

来源:互联网 发布:mac mysql phpmyadmin 编辑:程序博客网 时间:2024/05/18 20:07

在具体的操作前添加!符号,好吧,这又是什么诡异的语法?!

let digit = sender.currentTitle!

这里的!表示“我确定这里的的strValue一定是非nil的,尽情调用吧” ,例如

if userIsInTheMiddleOfTypingANumber {   //== true            display.text = display.text! + digit        }
{}里的display.text一定是非nil的,所以就能直接加上!,强制拆包(unwrap)并执行后面的操作。 当然如果不加判断,display.text不小心为nil的话,就会出错,crash掉。

关于

@IBOutlet weakvar display:UILabel!

详见Developer Documents UILabel API

 Reference:http://joeyio.com/ios/2014/06/04/swift---/

0 0
原创粉丝点击