遍歷陣列的同時刪除

2021-07-02 21:50:38 字數 1241 閱讀 6086

錯誤資訊:

collection <__nsarraym: 0xb550c30> was mutated while being enumerated.

1. nsmutablearray *temparray = [[nsmutablearray

alloc]initwithobjects:@"12",@"23",@"34",@"45",@"56",nil];

[temparray enumerateobjectsusingblock:^(id obj,nsuinteger idx,bool *stop)

}if (*stop)

}];利用block來操作,根據查閱資料,發現block便利比for便利快20

%左右,這個的原理是這樣的:

找到符合的條件之後,暫停遍歷,然後修改陣列的內容

這種方法非常簡單喲

2.nsmutablearray* arraytemp = ***;

nsarray* array = [nsarrayarraywitharray: arraytemp];

for(nsdictionary* dic in array)

}

// - 把 arr2陣列中的資料追加到 arr

的後邊

[arr addobjectsfromarray:arr2];

// - 把 arr2陣列中的資料追加到 arr

的最前邊

nsrange range = nsmakerange(0, arr2.count)

nsindexset * set = [nsindexset indexsetwithindexesinrange:<#(nsrange)#>]

[arr insertobjects:arr2 atindexes:set];

// -

從 deals 中 刪除 temper 陣列中的東西

[self

.deals

removeobjectsinarray:temparray];

python遍歷陣列

os.file split e python python25 lib os.pyc os.path.split os.file e python python25 lib os.pyc var myarr array new array one two three var mystr string...

Jquery遍歷陣列

each 方法 ul li input checked each function i,el 在乙個列表中,迴圈每一項用each是不錯的,索引,元素都給遍歷出來。each 方法 1.處理一維陣列,如下 each a b c function i,el 控制台輸出 0 a 1 b 2 c 2.處理二維...

遍歷陣列元素

遍歷陣列元素也就是把每個元素輸出出來.第一種語法 foreach arr as val ue value value value是自己定義的,陣列中每個元素的值給val ue,然 後輸出第 二種語法 for each value,然後輸出 第二種語法 foreach value,然後輸出 第二種語 ...