說我有一個對象someObject
和NSMutableArray *someArray
。我不確定someObject
是否在數組中,但如果是,我想刪除它。有兩個選項:在刪除它之前,我應該檢查一個對象是否存在於一個集合中?
案例1:
if([someArray indexOfObject:someObject] != NSNotFound)
[someArray removeObject:someObject];
案例2:
[someArray removeObject:someObject];
在案例2中,如果對象不數組中存在的,什麼也沒有發生。我的問題是,案例2效率更高,因爲在案例1中,我必須搜索數組並查看它是否存在,如果存在,我將其刪除,但我猜removeObject:
再次搜索該數組?
該鏈接真的很有趣 – Snowman
我會稍微放大一點:不要爲了優化NSArray,NSDictionary,NSString而放棄這種方式。它們很快,所以做得乾乾淨淨。複雜的優化可能不值得,甚至可能會變慢。 – paulmelnikow