2

許されません(表現が悪い)

if !(let nsDictionaryObject = swiftObject as? NSDictionary)
{
    "Error could not make NSDictionary in \(self)"
    return
}

Optional Chain 式の否定を 1 行で確認することはできますか?

4

3 に答える 3

10

Swift 2.0では、使用できます

guard let nsDictionaryObject = swiftObject as? NSDictionary else {
    "Error could not make NSDictionary in \(self)"
    return
}

nsDictionaryObjectこれは、guard ステートメントの外側のスコープにもバインドします。

于 2015-08-14T06:56:18.553 に答える
0

たとえば、Swift 1 では、elseブランチを使用したり、nil結果を確認したりできました。

var swiftObject: AnyObject = ""

if let _ = swiftObject as? NSDictionary { } else {
    println("error")
}

if swiftObject as? NSDictionary == nil {
    println("error")
}
于 2015-08-14T07:02:11.663 に答える
0

Swift 1.2 を使用している場合は、次の方法で実行できます。

if let nsDictionaryObject = swiftObject as? NSDictionary{} else {

    //your code

}
于 2015-08-14T06:59:26.927 に答える