虽然这可能不是一个很好的例子,但正如问题所述,我希望将 randomNo
与 numberSets
中的集合进行比较。然而,当找到一个数字时,我想知道是否有办法跳到下一组。
总而言之,randomNo
包含 2 个数字,可以在同一组中找到,它们是“6”和“9”。我想知道当我找到“6”时,是否可以取消该组的其余数字并进入下一组,而无需循环遍历该组中的其余数字
init() {
let numberSet1 : Set<Int> = [1,2,3,4,5]
let numberSet2 : Set<Int> = [6,7,8,9,10]
let numberSet3 : Set<Int> = [11,12,13,14,15]
let randomNo = [3,6,9,11]
numberSets = [numberSet1,numberSet2,numberSet3]
}
func searchFor(){
for num in randomNo{
for set in numberSets{
if set.contains(num) {
print("The following number was found: ", num)
}
}
}
}
最佳答案
实现此目的的一种方法是继续
外循环:
outer: for num in randomNo{
for set in numberSets{
if set.contains(num) {
print("The following number was found: ", num)
continue outer
}
}
}
另一种方法是将所有三个集合合并:
let union = numberSet1.union(numberSet2).union(numberSet3)
print(randomNo.filter(union.contains))
关于swift - Xcode 9.4.1 - 如何跳过组的剩余部分并移至下一组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53674221/