我想將兩個數組相互比較,並將不在另一個數組中的值追加到新數組中。現在的問題是,所有不等於另一個數組的值已經被追加,但我只想要追加另一個數組中的新值。快速比較兩個數組,長度不同
我希望問題很清楚。對不起,如果這是一個非常模糊的問題。我試圖清楚哈哈。 代碼和輸出打印以下:
// Iterate through all possible values
for i in 0...messages.count-1{
var match = false
for r in 0...self.messages.count-1{
println("NIEUWE" + messages[i].getID() + "OUDE" + self.messages[r].getID())
if(messages[i].getID().toInt() == self.messages[r].getID().toInt()){
var match = true
println(match)
break
}
}
if (!match) {
newArray.append(messages[i])
println(newArray)
}
}
輸出:
NIEUWE170OUDE170
NIEUWE170OUDE171
true
[PostDuif.Message]
NIEUWE171OUDE170
true
[PostDuif.Message, PostDuif.Message]
NIEUWE172OUDE170
true
該數組已經在相同的順序,只有一個是缺少一些元素?或者他們可能會完全不同的命令? – 2015-04-04 14:23:52
數組的順序是否重要?如果沒有,將它們都轉換爲集合,你可以聯合/相交它們。 – Tim 2015-04-04 14:35:40
數組最終不按順序排列。新陣列中的一個元素隨機添加,並且需要附加到舊陣列的最後一個索引 – 2015-04-04 14:45:58