NSDictionary 作为对象数据结构问题
我只是想确保我不需要核心数据作为一个简单的例子。如果我有一个 UITableView,用户可以点击加号来添加新的表条目,并且每个条目对应于一个单独的计时器事件,我是否将添加到表中的每个对象存储在 NSDictionary 中?谢谢。
I just wanted to make sure I don't need Core Data for a simple example. If I have a UITableView where the user can hit the plus sign to add new table entries, and each entry corresponds to an individual timer event, do I store each object added to the table in an NSDictionary? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
NSMutableArray 将是一个更好的选择。数组是一个有序列表,就像表一样。字典没有排序,因此它不太适合表。
如果这令人困惑,请尝试具体地思考它。想象一下,您有一个表,并且已将该表的数据存储在字典中。在某些时候,表格会要求它的数据源(可能是您的视图控制器)为表格的特定行提供一个单元格。你如何找出字典中的哪个条目对应于该单元格?另一方面,如果使用数组,表行和数据项之间的映射很简单。
NSMutableArray would be a better choice. An array is an ordered list, just as a table is. A dictionary is not ordered, so it's not a good match for a table.
If that's confusing, try thinking about it in concrete terms. Imagine that you have a table and you've stored the data for the table in a dictionary. At some point, the table will ask it's data source -- probably your view controller -- to provide a cell for a particular row of the table. How do you figure out which entry of the dictionary corresponds to that cell? On the other hand, if you use an array, the mapping between table rows and data items is simple.