将一个NSMutableArray连接到另一个NSMutableArray的末尾

13

希望您能够给出这个超级简单问题的简单答案!以下是伪代码:

NSMutableArray *Africa = [Lion, Tiger, Zebra];
NSMutableArray *Canada = [Polar Bear, Beaver , Loon];

NSMutableArray *Animals = *Africa + *Canada;

我想要得到的结果是:

Animals = [Lion, Tiger, Zebra, Polar Bear, Beaver, Loon];

在Objective-C/Cocoa中实现这个的正确语法是什么?

非常感谢!

2个回答

49
创建一个数组:

要创建一个数组:

NSMutableArray* africa = [NSMutableArray arrayWithObjects: @"Lion", @"Tiger", @"Zebra", nil];
NSMutableArray* canada = [NSMutableArray arrayWithObjects: @"Polar bear", @"Beaver", @"Loon", nil];

要合并两个数组,可以先用第一个数组的元素初始化一个新的数组,然后再将第二个数组的元素添加到其中:

NSMutableArray* animals = [NSMutableArray arrayWithArray:africa];
[animals addObjectsFromArray: canada];

1

根据弗拉基米尔的回答,我编写了一个简单的函数:

NSMutableArray* arrayCat(NSArray *a, NSArray *b)
{
    NSMutableArray *ret = [NSMutableArray arrayWithCapacity:[a count] + [b count]];
    [ret addObjectsFromArray:a];
    [ret addObjectsFromArray:b];
    return ret;
}

但是我还没有尝试找出这种方法是比弗拉基米尔的更快还是更慢。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接