gpt4 book ai didi

arrays - 如何检查数组中每个元素的条件?

转载 作者:可可西里 更新时间:2023-11-01 00:22:38 27 4
gpt4 key购买 nike

我有一段代码,我只想在数组中的每个元素都满足特定条件时才运行。目前,我必须知道数组的长度才能使任何代码正常工作,但我的最终目标是让它适用于任何长度的数组。

我当前的代码:

if (rand[0] == someInt && rand[1] == someInt && . . . && rand[n] == someInt) {

*do some things*

}

我希望它在不知道 rand 长度的情况下工作。

最佳答案

在 Swift 3 中,使用 first(where:),这非常简单:

extension Sequence {
func allPass(predicate: (Iterator.Element) -> Bool) -> Bool {
return first(where: { !predicate($0) }) == nil
}
}

在 Swift 2.2 中,它是类似的:

extension SequenceType {
func allPass(predicate: (Generator.Element) -> Bool) -> Bool {
for element in self {
if !predicate(element) { return false }
}
return true
}
}

无论哪种情况,当它们找到第一个失败的元素时,它们会立即返回 false。

关于arrays - 如何检查数组中每个元素的条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37932935/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com