Ambiguos对intValue的引用

时间:2016-09-14 08:21:13

标签: swift swift3

我有一个问题,swift 3不会出现swift 2.我读了一个json值,并调用函数intValueintegerValue swift 2)和xcode我得到了错误

  

“ambiguos引用intValue”。

为什么?

let errorcode = json["errorCode"]

switch(errorcode?.integerValue){
    case 1?

1 个答案:

答案 0 :(得分:2)

假设json的类型为[String: AnyObject]errorcode的类型为AnyObject?

errorcode?.intValue

含糊不清,因为NSNumberNSString都有intValue 属性。您可以将值转换为预期的NSNumber类型

let errorcode = json["errorCode"] as? NSNumber // type is `NSNumber?`

switch errorcode?.intValue {
case 1?:
    // ...
}

或直接将其投放到Int

let errorcode = json["errorCode"] as? Int // type is `Int?`

switch errorcode {
case 1?:
    // ...
}