试试这个:
NSArray *array1= @[@"fizan",@"nike",@"pogo"];
NSArray *array2= @[@"round",@"rectangle",@"square"];
NSArray *array3= @[@"frame",@"frame",@"frame"];
NSMutableArray *array = [[NSMutableArray alloc] initWithArray:@[array1,array2,array3]];
NSMutableArray *output = [[NSMutableArray alloc] init];
NSString *a;
NSInteger count = array.count;
for (int i = 0; i<array1.count; i++) {
a = @"";
for (int j = 0; j<count; j++) {
a = [a isEqualToString: @""] ? [NSString stringWithFormat:@"%@",[[array objectAtIndex:j] objectAtIndex:i]] : [NSString stringWithFormat:@"%@ %@",a,[[array objectAtIndex:j] objectAtIndex:i]];
}
[output addObject:a];
}
for (int i = 0; i < output.count; i++) {
NSLog(@"value %i -> %@",i+1,output[i]);
}
希望这有助于!
UPDATE:
NSArray *array1= @[@"fizan",@"",@"pogo"];
NSArray *array2= @[@"round",@"rectangle",@"square"];
NSArray *array3= @[@"frame",@"frame",@"frame"];
NSMutableArray *array = [[NSMutableArray alloc] initWithArray:@[array1,array2,array3]];
NSMutableArray *output = [[NSMutableArray alloc] init];
NSString *a;
NSInteger count = array.count;
for (int i = 0; i<array1.count; i++) {
a = @"";
for (int j = 0; j<count; j++) {
a = [a isEqualToString: @""] ? [NSString stringWithFormat:@"%@",[[array objectAtIndex:j] objectAtIndex:i]] : [NSString stringWithFormat:@"%@ %@",a,[[array objectAtIndex:j] objectAtIndex:i]];
}
[output addObject:a];
}
for (int i = 0; i < output.count; i++) {
NSLog(@"value %i -> %@",i+1,output[i]);
}
我已经测试此代码。它工作完美。再次检查并重新考虑问题。
感谢您的回答... :) – NilamPari
编码快乐:) –
,要是我有一个数组值的空白 这样 的NSArray *数组1 = @ @“fizan”,@“” @“弹簧”] ; NSArray * array2 = @ [@“round”,@“rectangle”,@“square”]; NSArray * array3 = @ [@“frame”,@“frame”,@“frame”]; 然后它给出错误,如 索引0超出空NSArray的界限 你能帮我解决这个问题吗? – NilamPari