2015-11-03 33 views
0

我有一個文本字段。在我的代碼中,我將myTextField.text轉換爲一個整數。如果我想在輸入的內容中輸入除Int之外的輸入時發生的錯誤,我將如何在Swift 2.0中處理這個錯誤?處理Swift 2.0中的轉換錯誤

+0

發佈您的工作。 – akshay

+0

'嘗試,做,趕上'http://stackoverflow.com/questions/30737262/swift-2-call-can-throw-but-it-is-not-marked-with-try-and-the-error-是 - 不哈 – Xrait

回答

1

使用init?(_ text: String, radix: Int = default)構造函數Int返回一個Int?(可選Int),這將是nil如果值是不是Int。使用可選結合if let來處理兩種情況:

if let value = Int(myTextField.text ?? "") { 
    // use value which is an Int 
} else { 
    print("value was not an Int") 
} 

注:由於myTextField.textString?它可能是nil,所以使用零合併運算??使用空字符串""當它是nil。這安全地解開myTextField.text或使用""


如果你心目中的情況,其中一個有效的Int尚未進入默認值,那麼你可以使用零合併運算??分配該值:

// Use 0 if the value is not an Int 
let value = Int(myTextField.text ?? "") ?? 0