因此,我使用的是NSUserDefaults
,我想確保保存NSArray
而不是NSMutableArray
。我在保存之前先處理NSMutableArray
,但是,我想知道如何最好地保存它。如果我想確保NSMutableArray返回僅作爲NSArray處理,是否複製我應該使用的?演員?
我該做setObject:[mutableArray copy]
嗎?或者[setObject:(NSArray *)mutableArray]
?第三個選項?
我傾向於copy
,因爲它似乎是mutableCopy
的自然對應物,但是在ARC之前不會廣泛使用某些不同的副本嗎?我認爲copy
當autorelease
仍然流行的電話被用於不同的事情。
你可以簡單地使用'setObject:mutableArray'。 – cojoj
需要強烈指出的是(在一般情況下 - 不是特定於NSUserDefaults)只需轉換爲NSArray不會阻止修改可變數組。它必須實際上以這樣或那樣的方式複製。 –