比较Swift中的字符串数组

时间:2017-06-21 13:29:18

标签: ios swift

text = ["lorem", "ipsum", "dolor", "sit", "amet"]

随机后:

wrongText = ["lorem", "ipsum", "amet", "sit", "dolor"]

我怎么知道哪个词放错了地方? 在上面的例子中,我只需要“amet”和“dolor”

3 个答案:

答案 0 :(得分:4)

尝试类似:

let changed = zip(text,wrongText).filter { $0 != $1 }.map { $0.0 }

这将配对两个数组的元素并输出不匹配的对。 map将提取每个不匹配对的第一个单词,因为您只需要它。

答案 1 :(得分:0)

var changed = [String]()    
for i in 0..<text.count {
      if text[i] != wrongText[i]{
         changed.append(wrongText[i])
      }            
}

答案 2 :(得分:0)

利用flatMap作为nil过滤器的较短版本:

let changed = zip(text, wrongText).flatMap { $0 != $1 ? $0 : nil }