2012-10-23 42 views

回答

61

我的猜測是:因爲NSOrderedSet管理一組不同的元素,類似於無序關係的NSSet

使用NSArray您可以創建一個與另一個對象不止一次相關的對象。

+0

啊......他們必須是不同的.....很可能這是正確的答案。 –

+1

因此,爲什麼會有人使用NSArray? – PostCodeism

+10

@PostCodeism - 因爲你可能正在存儲一系列非獨特元素,它們相對於彼此的位置是重要的。 IE,也許你有一組代表一首歌的字母或一組代表歌曲的音符。字母可以在單詞中重複,筆記可以在一首歌中重複,因此它不應該忽略重複的元素,而重新排列它們不會給你相同的單詞或歌曲,因此它也需要跟蹤順序。如果您需要可能重複的訂單元素,則需要一個NSArray。 – ArtOfWarfare

13

docs

您可以使用有序集來替代陣列時對象是否包含在集合中元素的順序是重要的測試和性能是成員資格的代價─測試的數組比檢測組的成員資格要慢。

+0

我已閱讀該文檔。考慮到大多數會員的計數很低,小型會員資格檢查似乎太過簡單。我認爲馬丁的答案是正確的。 +1仍然。 –

相關問題