ios-比较数组中对象的值并放入同一部分
我目前在数组和对象的逻辑上有问题,希望大家能解决我的沉默,谢谢 以下是我所拥有的:ios-比较数组中对象的值并放入同一部分,ios,objective-c,arrays,object,Ios,Objective C,Arrays,Object,我目前在数组和对象的逻辑上有问题,希望大家能解决我的沉默,谢谢 以下是我所拥有的: NSArray data = @[@[@"year",@"name"], @[@"2015",@"A"], @[@"2014",@"B"],.... ]; //have 100 small array, year can be similar 所以我想问我如何循环它们,将对象的年份与下一个对象进行比较,然后如果
NSArray data = @[@[@"year",@"name"],
@[@"2015",@"A"],
@[@"2014",@"B"],....
];
//have 100 small array, year can be similar
所以我想问我如何循环它们,将对象的年份与下一个对象进行比较,然后如果年份相同,将其放入类似于数据数组的NSDictionary中,但键=年份:
NSDictionary dict = @[@"year":@[@"year",@"name"],
@"2015":@[@[@"2015",@"A"],@[@"2015",@"C"]],
@"2014":@[@"2014",@"B"],
@"2013":@[@"2013",@"D"],...
];
我试着用谓词给我我想要的…但我不确定如何用不同的年份(我认为这是错误的,不确定)
这给我在小阵里面有两个同年的阵
//output of 2 array:
filtered1 = @[@[@"2015",@"diff name"],
@[@"2015",@"A"],..
];
filtered2 = @[@[@"other year",@"diff name"],
@[@"2014",@"B"],...
];
我的想法是,获取第一个小数组的年份,然后与其余99个小数组的年份进行比较,将第一年的数组乘积,获取另一个小数组,然后再次执行…但不确定如何实现它使用for循环并对照上一个记录进行检查,我没有100%的理解当你成功找到时你想做什么,但这应该行得通
NSString *prevData;
NSMutableArray *newData=[NSMutableArray array];
//check the last one
for (int i=0;i< data.count;i++)
{
NSArray currentData= [data objectAtIndex:i];
if(i!=0 && ([currentData objectAtIndex:0] isEqualTo:[prevData objectAtIndex:0]))
{
//add the data to newData
[newData addObject:currentData];
}
prevData=currentData
}
NSString*prevData;
NSMutableArray*newData=[NSMutableArray];
//检查最后一个
for(int i=0;i
谢谢,我已经弄清楚了我想要的结果……这可能吗?对不起,田,我没有明白你的意思
NSString *prevData;
NSMutableArray *newData=[NSMutableArray array];
//check the last one
for (int i=0;i< data.count;i++)
{
NSArray currentData= [data objectAtIndex:i];
if(i!=0 && ([currentData objectAtIndex:0] isEqualTo:[prevData objectAtIndex:0]))
{
//add the data to newData
[newData addObject:currentData];
}
prevData=currentData
}