处理 Swift 2.0 中的转换错误
Posted
技术标签:
【中文标题】处理 Swift 2.0 中的转换错误【英文标题】:Handling a conversion error in Swift 2.0 【发布时间】:2015-11-03 02:58:54 【问题描述】:我有一个文本字段。在我的代码中,我将 myTextField.text
转换为整数。如果我想在有人输入 Int
以外的输入的情况下处理错误,我将如何在 Swift 2.0 中处理这个错误?
【问题讨论】:
Try, do, catch
***.com/questions/30737262/…
【参考方案1】:
对Int
使用init?(_ text: String, radix: Int = default)
构造函数,该构造函数返回一个Int?
(可选Int
),如果值不是Int
,它将是nil
。使用可选绑定if let
处理这两种情况:
if let value = Int(myTextField.text ?? "")
// use value which is an Int
else
print("value was not an Int")
注意:由于myTextField.text
是String?
,它可能是nil
,所以使用nil 合并运算符 ??
来使用空字符串""
当它是nil
.这会安全地解开 myTextField.text
或使用 ""
。
如果您在没有输入有效Int
的情况下有一个默认值,那么您可以使用nil 合并运算符 @987654338 @ 分配该值:
// Use 0 if the value is not an Int
let value = Int(myTextField.text ?? "") ?? 0
【讨论】:
以上是关于处理 Swift 2.0 中的转换错误的主要内容,如果未能解决你的问题,请参考以下文章