【发布时间】:2016-11-19 21:21:06
【问题描述】:
我使用self.stnIdData.index(of: self.itemAtDefaultPositionId)! 来获取我的String[] 中元素的索引。如果 - 由于某种原因 - 元素不在数组中,我需要抛出一个错误。
我用下面的代码试了一下:
do {
var indexOfSelectedId = 0
try indexOfSelectedId = self.stnIdData.index(of: self.itemAtDefaultPositionId)!
var counter = 0
for currStn in self.pickerData {
if(counter == indexOfSelectedId){
self.itemAtDefaultPosition = currStn
}
counter += 1
}
print(" PV: itemAtDefaultPosition: \(self.itemAtDefaultPosition)")
var defaultRowIndex = self.pickerData.index(of: self.itemAtDefaultPosition!)
print(" PV: defaultRowIndex: \(defaultRowIndex)")
if(defaultRowIndex == nil)
{
defaultRowIndex = 0
}
self.stnPicker.selectRow(defaultRowIndex!, inComponent: 0, animated: true)
} catch let error{
print("Error while setting ID: \(error)")
}
但我在 xCode 的这一行中收到此警告:try indexOfSelectedId = self.stnIdData.index(of: self.itemAtDefaultPositionId)!:
在 'try' 表达式中不会调用抛出函数
【问题讨论】:
-
Swift 中没有
String[]。它叫[String],又名Array<String>
标签: swift