如果 submit_instance_key
值为 1,我正在寻找用于此数组数组的最佳高阶函数以返回 bool 值。
我研究过使用 filter
和 reduce
,但我在处理嵌套数组时遇到了问题。我也试过 compactMap
它,但它改变了数组的形状。
var someArray = [["submit_instance_key": 0, "instance_id_key": 4], ["submit_instance_key": 0, "instance_id_key": 4], ["submit_instance_key": 1, "instance_id_key": 5]]
如果 submit_instance_key
值为 1,我希望返回 Bool。
最佳答案
最好的高级函数是在找到匹配项后立即停止搜索的函数。 contains(where:)
是用于此目的的好函数。它需要一个闭包,依次应用于数组的每个元素,并在找到返回 true
的元素后立即停止。
var someArray = [["submit_instance_key": 0, "instance_id_key": 4], ["submit_instance_key": 0, "instance_id_key": 4], ["submit_instance_key": 1, "instance_id_key": 5]]
let found = someArray.contains(where: { $0["submit_instance_key"] == 1 })
print(found)
输出:
true
关于ios - 如果 "submit_instance_key"的值为 1,则在此数组上使用的最佳高阶函数返回 bool 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58083655/