3
A
回答
4
嘗試NSDictionary/NSMutableDictionary。另一方面,當它是最好的數據結構選擇時,你應該使用地圖/字典,不僅僅因爲它簡單快捷(儘管程序員時間很昂貴,正確的結構選擇有助於創建更好的整體設計)。當您需要快速查找值時,地圖很有意義,而且您不關心它們是否按排序順序存儲。
2
您可能還想使用NSMapTable。它的主要好處是它不會像NSDictionary那樣複製密鑰。
+0
另請參見:NSHashTable(僅適用於Mac,不適用於iOS AFAIK)。 – 2011-06-04 22:15:54
相關問題
- 1. C#:有沒有JTable的等價物?
- 2. C#ManualResetEvent的Objective-C/Cocoa等價物
- 3. Cocoa中UIScrollViewDelegate的等價物?
- 4. ViewResult有沒有ActionResult RedirectToAction的等價物?
- 5. DotNET上有沒有JVisualVM的等價物?
- 6. 有沒有.NET HttpWebRequest.ClientCertificates的Javascript等價物?
- 7. 有沒有glxinfo的Direct 3D等價物?
- 8. 有沒有Linux的SetWindowPos等價物?
- 9. 有沒有swfObject.js的Silverlight等價物?
- 10. Flex中有沒有JMock的等價物?
- 11. 有沒有Jasper JS的setUpClass等價物?
- 12. 在Go中有沒有java.io.Reader等價物?
- 13. 有沒有'git sed'或等價物?
- 14. 有沒有`git-dropbox`或等價物?
- 15. django-evolution有沒有SQLAlchemy等價物?
- 16. C中的數組有沒有indexOf等價物?
- 17. Cocoa中的Java RMI等價物?
- 18. Window Load事件的Xamarin.Mac/Cocoa等價物?
- 19. 在OS X Cocoa中的java.awt.Robot等價物?
- 20. C#TryParse有沒有提升lexical_cast等價物?
- 21. 有沒有一個C++等價的WaitforSingleObject?
- 22. 有沒有C#等價於Ruby的`respond_to?`?
- 23. 有沒有C#等價於Java的AbstractList?
- 24. 沒有Google Drive API writersCanInvite等價物嗎?
- 25. 對於macos/cocoa/opengl是否有CADisplayLink等價物?
- 26. 有沒有C#等價於IsDebuggerPresent()?
- 27. BufferedImage.getRGB C#等價物?
- 28. 有沒有一個JavaScript的PHP的urldecode或html_entity_decode()的等價物?
- 29. 有沒有gcc的__attribute__(純)的便攜式等價物?
- 30. 有沒有Java的PHP的gzdeflate等價物?
雅,它其實非常相似,謝謝。 :) – Frost 2010-07-02 23:24:10
map <>的內部表示是排序的,它允許您按排序順序遍歷鍵值對。 NSDictionary/NSMutableDictionary需要提取鍵,然後對它們進行排序才能達到相同的目的。我也正在尋找一個Obj-C模擬地圖<>,但他們不是。 – George 2011-04-06 17:05:49
@George:是的,但是「訂購」是成本。 hash_map(或unordered_map)可以更快速地查找已知鍵,並可以更快地插入和刪除。如果你需要一個排序的關聯容器,那麼映射<>是有意義的,否則hash_map可能是更好的選擇。 – Alan 2011-04-06 17:21:30