从索引获取对象,从另一个数组

时间:2016-11-24 10:54:25

标签: ios arrays swift3

有两个数组:idArrayInt和nameArrayString。我需要通过索引从第一个数组获取一个对象,我从第二个获得。我知道这很简单,但我是IOS开发的新手,并不了解如何实现它。

var idArray = [Int]() //for example 1 2 3
var nameArray = [String]() // for example "one" "two" "three"
var ident: Int!

@IBAction func btnNext_click(_ sender: AnyObject) {

var nameString = lblUnitType.text
var index = nameArray.index(of: nameString) //Cannot invoke 'index' with an argument list of type '(of: String?)' 
ident = idArray[index] //something like that by I don't sure     
}

2 个答案:

答案 0 :(得分:2)

lblUnitType.text并且index(of:的结果是选项,您需要使用可选绑定来解包它们:

if let nameString = lblUnitType.text, let index = nameArray.index(of: nameString), index < idArray.count { 
    ident = idArray[index] 
}

答案 1 :(得分:1)

如图所示,您可以在这个游乐场学习。 enter image description here

此外,在您的情况下,您可以参考词典。 enter image description here