尽管具有值,但仍将可选字符串转换为Int崩溃

时间:2019-02-13 05:45:12

标签: swift4

我检查了可选字符串

 print(limitCash)
  if let value = Int32(limitCash) {
         aProvider.limitBuy = value
  }

limitCash的值为Optional(“ 500”)。

程序检查是否让let语句并跳过它而不分配值。

如果我尝试使用aProvider.limitBuy = Int32(limitCash),程序将崩溃!

1 个答案:

答案 0 :(得分:0)

首先,您需要解开String吗?到String,然后解开将String转换为UInt32(将是Uint32?)的结果。

print(limitCash)
if let stringValue = limitCash {
   if let value = Int32(stringValue) {
     print(value) // 500
   }
}