關於swift for 迴圈 遍歷陣列刪除元素的bug問題
阿新 • • 發佈:2019-02-12
最近做專案的時候,有個迴圈操作刪除陣列的元素剛開始是這麼寫的。
for (index, item) in list.enumerate() {
……// 如果裡邊有刪除操作,會有bug,不信你測測。一直顯示陣列越界
}
for item in list {
……// 如果裡邊要刪除的話要改良
}
// 改良之後的寫法,親測沒問題Bug,也符合swift的寫法
var array = ["1","2","3","4","5","6"]
for item in array {
if let index = array.index(of: item)) {
if item == "1" {
array.removeAtIndex(index)
}
if item == "5" {
array.removeAtIndex(index)
}
}
}
print(array)