Emptiness空值语义
如果 Swift 里的 array 数组不能为空? 仔细想想: 如果 Swift 已经设计了非空的数组了. 但这会让人很烦对吧? 什么语言有非空的数组? 然而, Swift 比起 C 语言已经修改了很多规则了. 例如, switch 里不需要 break 了, 甚至可以使用 fallthrough 来把几个 case 连接起来. 没有了 ++ 操作符, 它是那么的让人迷惑, 多余, 并且没了它语言会变得更好. 还有一点 Swift 跟 C 不一样, Swift 需要显式地声明可空性. Swift 让你使用 Optional 类型, 向类型系统指定某个值是否可能有空. 你可以说你有一个 controller, 或者可能有一个 controller 也可能没有. 类型系统可以在所有地方都检查一遍, 保证这个值在被需要使用时不会为空. <!--more--> Doubly Empty 当 Optional 和 Array 产生交汇时, 你会有两种方式去描述空值: nil 或者是空数组. 这可能会有点绕, 例如, 当你检查一个数组是否为 nil 或者为空数组的时候. 例如, 你想要...