nsdictionary是否是一个很好的数据类型,用于存储长字符串值作为键的这些描述的值和名称?或者不同的数据类型会更有效吗?我正在将它用于动物,并且拥有和数组保存所有数据然后使用字典指向动物的名称和描述。我只是好奇这是否用于状态和资本等较小的数据
或者我应该使用#Define @"rhino description"
[Animal animalObj:@"rhino" location:@"the water" description:[[self setGenericAnimals] valueForKey:@"Rhino"]]
答案 0 :(得分:1)
NSDictionary就可以了。使用NSDictionary的好处是你可以将数据作为JSON保存在sperate文件中,然后在需要时将其序列化为NSDictonary。这将使您更容易管理所有数据,并将其与您的应用程序分开。
这是如何将JSON转换为NSdictionary的良好开端。 http://www.raywenderlich.com/5492/working-with-json-in-ios-5
请记住,整个NSDictionary必须适合内存,所以如果你要拥有数千个字符串,你可能希望将它们分成不同的JSON文件,然后在需要时将它们序列化为字典。
另一件需要记住的事情是,如果您想对对象进行简单的比较和排序选项,那么最好使用CoreData,因为这样可以存储大量字符串并轻松访问它们。