关于swift for 循环 遍历数组删除元素的bug问题
2017-10-30 13:19
1236 查看
最近做项目的时候,有个循环操作删除数组的元素刚开始是这么写的。
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)
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)
相关文章推荐
- for循环使用range遍历数组尝试修改元素值的问题
- for循环删除数组时的问题
- 约瑟夫问题 算法很简单保证每个人都能看懂用的是模拟现实 用数组实现 利用循环删除数组中的元素
- swift-for循环遍历,遍历字典,循环生成数组
- 下面将针对java.util.ArrayList在foreach循环遍历时删除元素的问题
- iOS 数组遍历删除元素的问题
- js中的循环遍历数组中的元素,ES6(for-of)、ES5(forEach、for-in)、通用(for(i=0;i<length;i++))
- 关于动态存储分配函数的调用,在已经过排序的数组中查找及删除内容的操作,余数的分析,删除字符数组中的空格,对链表的逆置,在源字符串中查找子字符串的个数,函数指针以及函数的调用,循环赋值带来的问题以及插入
- java.util.ArrayList在foreach循环遍历时删除元素的问题
- iOS 数组遍历删除元素的问题
- 关于list循环删除元素,迭代器失效的问题
- 关于遍历向数组中添加值的问题定义一个空数组要写在循环外,否则会被覆盖
- Python中不用循环同时遍历两个数组并进行对应元素的处理并进行删除
- 利用java迭代器Itetator遍历并删除HashMap中的元素问题
- 犯了一个菜鸟必备的很郁闷的错误:for循环删除LinkedList集合中元素
- 反向思维的妙处---解决正向循环删除元素的问题
- NSMutableArray数组循环中删除元素不安全的
- php中数组的遍历之for循环
- std::map遍历删除某些元素问题
- for循环小技巧,遍历数组的时候要使用恰当