Ios 查找数组中与Swift中特定条件匹配的第一个元素
假设我有这样一个数组:Ios 查找数组中与Swift中特定条件匹配的第一个元素,ios,arrays,swift,Ios,Arrays,Swift,假设我有这样一个数组: [ ["required": true], ["required": true], ["required": false], ["required": false], ["required": false], ["required": false], ["required": false] ] 我想在这个数组的索引处插入一个新元素,其中requiredfirst等于false(位置2)。我相信我可以使用每个循环的基
[
["required": true],
["required": true],
["required": false],
["required": false],
["required": false],
["required": false],
["required": false]
]
我想在这个数组的索引处插入一个新元素,其中required
first等于false
(位置2)。我相信我可以使用每个循环的基本参数来确定这一点,例如:
var idx = 0
for (i, el) in myArray.enumerate() {
if el["required"] == false {
idx = i
break
}
}
但这似乎不是很迅速。在Swift 2中是否有更干净(即更少的代码)的方法?也许是使用过滤器或映射的东西?这个怎么样:
let idx = myArray.indexOf({$0["required"] == false})
Swift 3:
let idx = myArray.index(where: { $0["required"] == false })
这个怎么样:
let idx = myArray.indexOf({$0["required"] == false})
Swift 3:
let idx = myArray.index(where: { $0["required"] == false })