【发布时间】:2016-01-09 14:07:01
【问题描述】:
我在 Parse.com 上有一个类,它有一个“GeoPoint”列(每个对象都有经度和纬度)。
我想检查是否有两个具有相同 GeoPoint 的对象。
我已经尝试过了,但它不起作用(打印没有重复的对象):
PFQuery *query=[PFQuery queryWithClassName:@"Schools"];
query.limit=1000;
[self.myObjects addObjectsFromArray:[[query findObjects] mutableCopy]];
NSMutableArray *geoPoints=[NSMutableArray array];
for (PFObject *object in self.myObjects) {
[geoPoints addObject:[object objectForKey:@"GeoPoint"]];
}
NSCountedSet *cs=[[NSCountedSet alloc] initWithArray:geoPoints];
int num=1;
for (PFObject *object in cs) {
if ([cs countForObject:object]>1) {
NSLog(@"%@ %@",[[self.myObjects objectAtIndex:num] objectForKey:@"Name"], [[self.myObjects objectAtIndex:num] objectForKey:@"Address"]);
num++;
}
}
如何检查 NSArray/Parse 本身的重复项。
谢谢!
【问题讨论】:
-
为什么要了解重复项?您如何首先添加这两点?如果它们是一个问题,为什么你没有云代码来检查保存时的欺骗?
-
@Wain 用户不向 Parse 添加对象(该应用程序只是获取我预先准备的数据)所以它需要是一次性事件,这就是为什么我没有云代码。我在地图上为每所学校显示标记,如果有两所学校具有相同的 geoPoint,一个标记将位于另一个之上,所以我想找到另一所学校具有相同 geoPoint 的对象并将其移动一点到一边,这将解决我的问题。我需要知道如何找到这些重复项。
标签: ios objective-c iphone cocoa-touch parse-platform