我正在开发一个应用程序,根据 5000 行列表验证用户输入。 - 即列表中存在与输入的名称匹配的名称。
最有效、最快捷的方法是什么 - 我应该将文本列表转换为 plist,然后通过检查进行验证吗?
谢谢。
最佳答案
对每个现有字符串执行 [input isEqualToString:existingString]
会非常慢。
一个快速的方法是将您现有的条目作为键保存到字典中,存储一些值。值是什么并不重要,关键是您可以尝试使用输入从字典中获取值。
if([existingEntriesDictionary objectForKey:input] != nil)
{
// entry is found!
}
else
{
// doesn't exist
}
如果你得到什么——它就存在。如果得到 nil,则它不存在。
关于iOS 最有效的文本匹配方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21615354/