比较/查找两个NSArray并获得正确的值

时间:2015-12-16 14:45:26

标签: ios objective-c json nsarray mkmapview

在我的项目中,我有两个不同的数据集存储在两个单独的数组中。现在我正在尝试进行查找/比较,如果某些字段相等,然后添加额外的值,例如:

数据集1:

for ( int i=0; i<[self.plarray count]; i++)
    {
        Places *object2 = [self.plarray objectAtIndex:i];
        ePlaces = object2.pCitpr;

        NSLog(@"FD: %@", ePlaces);
    }

数据集2:

for ( int i=0; i<[self.data count]; i++)
    {

         Mpobject *object3 = [self.data objectAtIndex:i];
         ePlaces2 = object3.oLocation;

        NSLog(@"MP: %@", ePlaces2);

    }

第二个数据集返回较低的计数,但输出也存储在数据集1中。数据集1包含额外的值,例如(lon / lat)GPS协调,我想将其添加到数据集2中。

因此,检查dataset1值是否等于dataset2值,然后将额外(lon / lat)值添加到dataset1。

我之所以需要这样做是因为我的项目中有一个JSON文件,该文件包含来自所有城市的GPS协调,需要在mapView中将其设置为注释。

现在......数据集2只有没有坐标的城市名称,我可以使用CLGeocoder对坐标进行反向查找,但如果请求太多,它会发出警告。 Apple的文档还说每分钟只能进行一次查找。

我希望这是可以理解的。

聚苯乙烯。原谅我的语言,我来自荷兰。

1 个答案:

答案 0 :(得分:1)

很难知道如何在不知道每个对象的属性的情况下为此提供代码,但您只需迭代两个数据集并比较相关属性,然后分配值。

x