0
我正在优化一个objective-c应用程序,并且在那个应用程序中有一个包含大约4000个句子的大型NSString;不要问为什么......但有。 它随机选择一个句子并返回。从一个巨大的字符串中选择一个句子
这是代码(I shortend的centenses):
NSString *sentences[] = {@"For crying out loud", @"Too much information", @"Tomorrow", @"Tonight", @"I don't know", @"Forever and ever ", @"Lets get high", @"Foreigner ", @"Sick"};
self.responses = malloc(sizeof(self.responses)/sizeof(void*));
memcpy(strings, self.responses, sizeof(sentences)/sizeof(void*));
[...]
[self performSelector:@selector(didRecieveMessage:) withObject:self.responses[rand() % sizeof(self.responses)] afterDelay:rand() % 15 + 2];
现在,这需要优化。我正在考虑将这些句子包含在SQLLite
Db中,并且调用数据库来获取随机句子,但是有没有更好的方法来做到这一点?例如。从text file
或Plist file
读取一条随机线?如果是这样,我该怎么做?内存当然是最重要的方面之一。
好的,谢谢。然后我会尝试SQLLite – user1580250 2012-08-08 22:20:38