我一直都在打造Xcode和凸狀部來了產生它斯威夫特錯誤「無法爲‘==’接受找到超載......」
if (err == nil && token != nil) {
...
}
的ERR是let err: NSError?
類型和令牌是var token = body as! NSString
這似乎是導致該錯誤的第一條件。任何幫助或建議都會很棒。
我一直都在打造Xcode和凸狀部來了產生它斯威夫特錯誤「無法爲‘==’接受找到超載......」
if (err == nil && token != nil) {
...
}
的ERR是let err: NSError?
類型和令牌是var token = body as! NSString
這似乎是導致該錯誤的第一條件。任何幫助或建議都會很棒。
您的問題是,token
不是可選的,因爲您使用的是as!
。
擺脫強制類型轉換來解決這個問題,使token
可選的太多:
let token = body as? NSString
順便說一句,你不需要周圍的狀況的支架,你可以寫這樣的:
if err == nil && token != nil {
}
有一個類似的問題,我定義了一個int,如果用戶輸入一個數字,它會存儲它。我有一個情況,如果用戶沒有輸入....如果(數字==零),我有同樣的問題。因爲我將它定義爲一個int,所以它不想讓它爲空,所以我將int轉換爲一個字符串,並且它工作正常。
所以也許找到你定義「err」和「token」的位置,看看是否有必要進行轉換。 var stringError = err並強制使用!或者投射爲字符串(err)。
'err'和'token'的類型是什麼?我猜想其中一個或兩個都不是可選的。 – ABakerSmith
我haver更新了這個問題,看起來像err是可選的 –