我的第一个数组是
arr1 = [1, 2, 3, 4 , 5]
我的第二个数组是
arr2 = [2, 3, 4]
我想将arr1与arr2进行比较,并输出第三个数组
arr3 = ["No match", 2, 3, 4, "No match"]
因此,我在arr1和arr2不匹配的索引处添加了占位符值。 Arr1和arr2不会总是排序。
我该如何在Swift 3中做到这一点?无法提出一个有效的循环:/
最佳答案
一个简单的解决方案是
let arr1 = [1,2,3,4,5,6]
let arr2 = [2,3,4]
var arr3 = [String]()
for value in arr1{
if arr2.contains(value){
arr3.append("\(value)")
} else {
arr3.append("No Match")
}
}
一线解决方案是
let results = arr1.map {arr2.contains($0) ? "\($0)" : "No Match"}
关于ios - Swift 3-比较两个不等长的数组,并在其中添加占位符值以使它们相等,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48541305/