Iphone 数组字典

Iphone 数组字典,iphone,objective-c,Iphone,Objective C,我在做一些我需要分类的事情 我有一个对象数组,对象为 array1=名称、卷号、组名。 array2=名称、卷号、组名 我想根据同一组对上述数组进行分类。我不想与硬编码的组名进行比较。 这意味着我希望在单独的数组中包含具有相同国家名称的成员。在这里,数组计数不会硬编码。它将在数据存在时创建。我的数据如下 请告诉我任何逻辑 谢谢 项目0 学生姓名=“ABC”;卷号=“12”;Country=“美国” 项目1 学生姓名=“DEF”;卷号=“12”;国家=“印度” 项目2 学生姓名=“DEF”;卷号=

我在做一些我需要分类的事情


我有一个对象数组,对象为 array1=名称、卷号、组名。 array2=名称、卷号、组名

我想根据同一组对上述数组进行分类。我不想与硬编码的组名进行比较。 这意味着我希望在单独的数组中包含具有相同国家名称的成员。在这里,数组计数不会硬编码。它将在数据存在时创建。我的数据如下

请告诉我任何逻辑

谢谢

项目0
学生姓名=“ABC”;卷号=“12”;Country=“美国”

项目1 学生姓名=“DEF”;卷号=“12”;国家=“印度”

项目2 学生姓名=“DEF”;卷号=“12”;国家=“印度”

项目3
学生姓名=“DEF”;卷号=“12”;Country=“USA”

创建一个包含这些属性的属性的简单类怎么样?

假设您有一个
NSArray
包含其他
NSArray
的,填充了
NSString
对象(如您的编辑建议),为什么不编写一个简单的方法呢? 下面是一个对象的方法示例,该对象的属性名为
myItems
,类型为
NSArray

// NSArray *myItems, containing your stuff

-(NSArray *)itemsWithCountryName:(NSString *)aCountryName {
    NSMutableArray *items = [NSMutableArray arrayWithCapacity:[myItems count]];
    NSArray *myItemAsAnArray;
    for(myItemAsAnArray in [self myItems]) {
        // your edit suggets 2 as the index for the country name
        // maybe you can provide a defined constant
        if([[myItemAsAnArray objectAtIndex:2] isEqualToString:aCountryName]) {
            [items addObject:myItemAsAnArray];
        }
    }
    return items;
}
但也许你在用字典

-(NSArray *)itemsWithCountryName:(NSString *)aCountryName {
    NSMutableArray *items = [NSMutableArray arrayWithCapacity:[myItems count]];
    NSDictionary *myItemAsAnDictionary;
    for(myItemAsAnDictionary in [self myItems]) {
        // same again for the key
        if([[myItemAsAnArray objectForKey:@"Country"] isEqualToString:aCountryName]) {
            [items addObject:myItemAsAnArray];
        }
    }
    return items;
}

祝你好运

你不是说你有一系列字典吗?请编辑您的问题,使其清晰。我想我有一个答案给你们,但就你们现在的问题来看,不可能回答。我已经用样本编辑了data@iSwap所以这是一个字典数组,那么?我想用相同的组名制作学生数组,就像USARRAY只有来自美国的学生一样“我有一个对象数组,对象为array1”。。。但是
array1
不是数组,对吗?。那个么你们不应该叫它数组,它真的很混乱。谢谢大家,我用排序描述符完成了分组。开始时,我使用排序描述符作为国家名称。然后,将数据分离成具有相同国家名称的学生的单独数组。