我有一个名为Filter
的数据类型,它具有NSMutableArray
属性,该属性包含一堆FilterKey
个对象(每个过滤器的密钥数量不同)。我有一堆Filter
个对象存储在名为NSMutableArray
的{{1}}中。
我有一个Filters
,其中每一行都填充了UITableView
个对象之一的数据。我的问题是,对于UITableView中的给定行,如何使用FilterKey
数组来找到正确的Filters
(考虑到我已经手动将过滤器和键放在一起)?
基本上,我知道我可以遍历FilterKey
数组和每个Filters
对象,遍历所有Filter
,但我想知道是否有更好的方法这样做(即更好的数据结构,还是能让我更快地获得正确对象的东西?
对不起,如果您有任何疑问,请在评论中告诉我。
答案 0 :(得分:2)
通常,您会为此使用节和行,其中每个节都是Filter,每行都是FilterKey。
听起来你只是想显示过滤器键,而没有过滤器的章节标题(如果我正确地阅读你的帖子)。如果你真的不想要标题,那很好,只需为tableView:heightForHeaderInSection:
返回0,为nil
返回tableView:viewForHeaderInSection:
。
所有这些都是为了方便而不是表现。它不太可能比通过过滤器并加上其键的计数快得多。这种操作非常快。但是,部分/行可以更好地映射您的数据,因此无论如何我都可能会使用它来保持代码更简单。
答案 1 :(得分:1)
您可以使用散列映射的NSMutableDictionary,从而实现更快,更轻松,可读的操作。
如果您更喜欢数组,则无需遍历搜索特定值,您可以使用NSPredicate过滤数组。