gpt4 book ai didi

arrays - 获取更短版本的 for 循环?

转载 作者:搜寻专家 更新时间:2023-11-01 05:56:43 24 4
gpt4 key购买 nike

我使用的是 Swift 3.0 并且有这段代码用于搜索数组中的项目作为 String 类型的扩展:

extension String {
func equal(compareToArray : [String]) -> Bool {
for s in compareToArray {
if self == s {
return true
}
}
return false
}
}

它运行良好,但我的问题是,我能否做得更好(更短/更简单或更快)?

好的,另一个类似的例子:

func contains(compareToArray : [String]) -> Bool {
for s in compareToArray {
if self.contains(s) {
return true
}
}
return false
}

最佳答案

更短、更简单、更快

let compareToArray = ["foo", "bar", "baz"]
compareToArray.contains("bar")

编辑:

根据你的第二个例子

!compareToArray.filter{ $0.contains("oo") }.isEmpty

compareToArray.index(where: {$0.contains("oo")}) != nil

关于arrays - 获取更短版本的 for 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40236316/

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