Ios 过滤器:FMDatabase vs.NSDictionary vs.NSArray

Ios 过滤器:FMDatabase vs.NSDictionary vs.NSArray,ios,performance,sqlite,nsarray,nsdictionary,Ios,Performance,Sqlite,Nsarray,Nsdictionary,在我当前的应用程序中,我有一个数据表,其中包含略多于10000行的数据,每行包含大约20个属性。是的,这看起来很奇怪,但是没有其他方法来保存数据 应用程序启动时,所有数据都会读入NSDictionary。每个对象都是一个自定义类的实例,该类具有与数据库表相同的属性。非常基本的东西 在UITableView中,我想显示此数据的过滤“子集”。关于移动设备的性能,哪种过滤数据的方式最快或占用内存最少 FMDatabase并选择query,basic WHERE syntaxx NSArray,迭代每个

在我当前的应用程序中,我有一个数据表,其中包含略多于10000行的数据,每行包含大约20个属性。是的,这看起来很奇怪,但是没有其他方法来保存数据

应用程序启动时,所有数据都会读入NSDictionary。每个对象都是一个自定义类的实例,该类具有与数据库表相同的属性。非常基本的东西

在UITableView中,我想显示此数据的过滤“子集”。关于移动设备的性能,哪种过滤数据的方式最快或占用内存最少

  • FMDatabase并选择query,basic WHERE syntaxx
  • NSArray,迭代每个对象并将匹配的对象临时存储在另一个NSArray中(resp.NSMutableArray)
  • 与2相同,但使用NSDictionary对象

  • 提前感谢您的建议

    如果所有数据都读入词典,则可以使用NSPredicate筛选数据。内存最少意味着不必将所有数据读入词典。如果数据已经在SQL数据库中,那么只选择您需要的数据。注意,在应用程序启动时,我甚至不需要所有10k行。仅仅为给定的过滤器选择所需的过滤器确实是最好的解决方案,为什么我没有想到?!谢谢