[英]'(String) -> AnyObject?' is not convertible to 'ResultCell'
[英]AnyObject is not convertible to 'String'
我收到以下錯誤AnyObject'無法轉換為'String'。 if (answerArray != NSNull() && answerArray != nil)
我在此錯誤if (answerArray != NSNull() && answerArray != nil)
我嘗試將其強制轉換為String,但無法解決問題。 我在下面發布了整個代碼。
let answerArray : AnyObject = jsonparser.objectWithString(answer)
if (answerArray != NSNull() && answerArray != nil) {
}
我的理解是jsonparser.objectWithString(answer)
應該基於分配給它的變量的名稱返回一個數組。
如果是異類類型的數組,則可以嘗試NSArray
為NSArray
:
if let answerArray = jsonparser.objectWithString(answer) as? NSArray {
...
}
如果該數組應該包含相同類型的對象(比如說Int
),那么您可以嘗試將類型轉換為swift數組:
if let answerArray = jsonparser.objectWithString(answer) as? [Int] {
...
}
需要注意的是一個非可選變量永遠是nil
-你已經宣布answerArray
作為非可選。
如果要檢查NSNull
,建議閱讀此問題和相關答案。
我的猜測是answerArray != nil
是錯誤的answerArray != nil
很傻,因為它返回的錯誤是“無法轉換為String”。 更有用的是answerArray
不是可選的。
那就是您的問題-您let answerArray : AnyObject...
並且AnyObject
不是Optional
。 在Swift中,“ answerArray”從不為“ nil”,因為只有Optional
類型可以為nil
。
如果不查看jsonparser.objectWithString
功能,我很難更正您的代碼,但是從本質上講,編譯器告訴您正在檢查nil的非可選類型-這是不正確的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.