所以价值指数我有两个字典被构造为这样:的NSDictionary发现的一个关键
{
version: "1.0",
timestamp: 1123,
data: [
{
foo: "0.0026",
bar: 548,
},
{
foo: "0.0065",
bar: 341,
},
],
revision: 1234
}
,因此
{
version: "1.0",
timestamp: 1123,
data: [
{
foo74: "0.0026",
bar: 340,
},
{
foo74: "0.0378",
bar: 548,
},
],
revision: 2345
}
这些在异步从两个单独的API调用和加载然后重新加载UITableView
。 在每个UITableViewCell
我需要匹配bar
值来显示每个单元格中的相关数据。例如:UITableView
的索引0将包含bar: 548
和foo:"0.0026"
但是,在同一个单元格中,我需要包含值foo74
,在此例中为"0.0378"
。这意味着我必须通过第二个数据集并找到bar
等于548
的索引。
我想找到一种方法来做到这一点cellForRowAtIndexPath
里面,而不必遍历第一个(导致O(n^2)运行时)每个第二个数据条目。
我试过allKeysForObject
通过将548
的值传入第二个数据集,它似乎没有返回任何内容。
我认为先把它们排序,这会给我稍微更好的运行时间。
我真的只是寻找的东西,这将避免我不得不做这样的事情:你的表视图重载
for (int i = 0; i < [[dict2 objectForKey:@"data"] count]; i++) {
if(dict1[@"data"][indexPath.row][@"bar"] == dict2[@"data"][i][@"bar"])
{
NSLog(@"found");
}
}