区别?而且!在Swift语言?

时间:2014-06-30 18:44:12

标签: swift

我在线阅读了很多文章并预订了(Apple),但我无法找出它们之间的区别?而且! Swift语言的运算符。

override func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell!
    {

    }

    override func numberOfSectionsInTableView(tableView: UITableView?) -> Int {
        return 1;
    }

在上面的代码中,第一个func声明tableView为!并在第二个函数tableView中声明为?。

1 个答案:

答案 0 :(得分:45)

根据官方Apple文档:

  

使用可选值时,您可以写吗?在行动之前   喜欢方法,属性和下标。如果之前的值?   是零,一切都在?被忽略和整体的价值   表达式为零。否则,将打开可选值,并且   之后的一切?作用于未包装的价值。在这两种情况下,   整个表达式的值是一个可选值。

     

一旦确定可选项确实包含值,就可以   通过向。添加感叹号(!)来访问其基础值   可选名称的结尾。感叹号有效地说:“我   知道这个选项肯定有价值;请用它。“这个   被称为强制展开可选的值(...)

Apple Inc.' Swift Programming Language'。 iBooks的。 https://itun.es/nl/jEUH0.l