!= nil语句中的Swift选项

时间:2017-06-15 17:35:38

标签: swift

你是否支持Swift开发人员经常使用!= nil?以下是针对可选系统的反模式吗?

var myStringArray: [String]?

if myStringArray != nil {
   textField.text = myStringArray?[0]
   // some other code related to the array being there
}

风格感觉不对劲。有人知道我可以学习的模式来改善我的风格吗?

1 个答案:

答案 0 :(得分:1)

这是可选绑定的用途。

if let myStringArray = myStringArray {
    textField.text = myStringArray[0] // use non-nil variable
}

在旁注中,请使用myStringArray.first代替myStringArray[0]。否则,如果数组为空,则代码将崩溃。或者您可以添加一个计数检查:

if let myStringArray = myStringArray, myStringArray.count > 0 {
    textField.text = myStringArray[0]
}