Вы можете использовать словарь, чтобы поместить объекты с одной и той же страной в отдельный массив:
NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];
for (dataclass *location in array) {
if (![dictionary objectForKey:location.country]) {
[dictionary setObject:[NSMutableArray array] forKey:location.country];
}
[(NSMutableArray *)[dictionary objectForKey:location.country] addObject:location];
}
Теперь не только вы можете получить количество разных стран, например:
int countriesCount = [dictionary count];
Но также легко заполнить каждый раздел вашего табличного представления местоположениями из соответствующей страны.
Вы можете получить все местоположения для определенной страны с именем countryName
, например так:
NSArray *locationsForCountry = [dictionary objectForKey:countryName];
Вы также можете получить список всех стран, подобных этой:
NSArray *countries = [[dictionary keyEnumerator] allObjects];