this page有一个简单的" Swift期权的解释。
这家伙有一些疯狂的例子,如下:
if let p = partitionArray([1, 2, 3, 4] as NSArray?) {
// this code will be called
}
if let p = partitionArray([1, 2, 3] as NSArray?) {
// this code won't be called
}
你好吗?这些代码对我来说是相同的,除了第二个数组少了一个元素。为什么第二个不会执行是黑魔法或该家伙吸烟真的很糟糕。
他举了另一个例子:
partitionArray([1, 2, 3, 4] as NSArray?)![0] // will work fine
partitionArray([1, 2, 3] as NSArray?)![0] // will crash
同样的事情。
如果这是一个简单的解释,我就无法得到它。你们能解释一下吗?
答案 0 :(得分:5)
分区功能
if (p.count % 2 != 0) return nil;
没有!会崩溃