今天看到**,突然突發奇想,想要探索乙個問題:這裡寫了乙個簡單的demo來驗證:nsarray的
enumerateobjectsusingblock
方法到底是同步的還是非同步的,如果我們想要在block內部修改外部的值,是否要使用__block
來修飾
- (void)viewdidload
- (void)testmethod ];
nslog(@"外部結束:陣列=%@,==>%zd",arrm,self.count++);
}
log如下:
2018-09-30 14:02:14.144150+0800 testenumerate[10209:289132] 內部操作 ==>0
2018-09-30 14:02:14.144277+0800 testenumerate[10209:289132] 內部操作 ==>1
2018-09-30 14:02:14.144363+0800 testenumerate[10209:289132] 內部操作 ==>2
2018-09-30 14:02:14.144442+0800 testenumerate[10209:289132] 內部操作 ==>3
2018-09-30 14:02:14.144517+0800 testenumerate[10209:289132] 內部操作 ==>4
2018-09-30 14:02:14.144592+0800 testenumerate[10209:289132] 內部操作 ==>5
2018-09-30 14:02:14.144666+0800 testenumerate[10209:289132] 內部操作 ==>6
2018-09-30 14:02:14.144783+0800 testenumerate[10209:289132] 外部結束:陣列=(
1,2,
3,4,
5,6,
7),==>7
可以得出結論:
enumerateobjectsusingblock
方法是同步的,
而且,想要在block內部修改外部的物件,也不需要__block
修飾
IOS 陣列使用
arc下 定義陣列 nsmutablearray tt和nsmutablearray tb 當nsmutablearray tb nsmutablearray alloc init nsdictionary d nsdictionary dictionarywithobject 123 forkey...
IOS陣列相關
1 建立陣列 建立乙個空的陣列 nsarray array nsarray array 建立有1個元素的陣列 array nsarray arraywithobject 123 建立有多個元素的陣列 array nsarray arraywithobjects a b c nil nil nsarr...
iOS陣列排序
一 利用nssortdescriptor物件陣列排序 nssortdescriptor可以根據陣列中物件的屬性來排序,為排序陣列的要排序的屬性建立nssortdescriptor物件,將所有這些物件放入乙個陣列中,該陣列將會在後面用作引數。使用nsarray類的sortedarrayusingdes...