通过索引从数组中获取对象,即从另一个数组中获取
Posted
技术标签:
【中文标题】通过索引从数组中获取对象,即从另一个数组中获取【英文标题】:Get object from array by index, that is getting from another array 【发布时间】:2016-11-24 10:54:25 【问题描述】:有两个数组: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
【问题讨论】:
听起来你最好使用字典而不是数组 或自定义结构的数组,仅包含 ID 和名称 【参考方案1】:lblUnitType.text
和index(of:
的结果是可选的,您需要使用可选绑定将它们展开:
if let nameString = lblUnitType.text, let index = nameArray.index(of: nameString), index < idArray.count
ident = idArray[index]
【讨论】:
@NiravD 谢谢,我添加了一个 where 子句【参考方案2】:您可以在如图所示的游乐场中学习。
此外,在您的情况下,您可以参考字典。
【讨论】:
以上是关于通过索引从数组中获取对象,即从另一个数组中获取的主要内容,如果未能解决你的问题,请参考以下文章
如何从另一个数组中获取具有批准 ID 的项目?地图()过滤器()还是?