将NSArray转换为NSMutableArray

31
如上所述。了解这一点会很有帮助。谢谢!

9
添加“急需此事”可能会产生相反的效果... - Mitch Wheat
今天已经有三个关于NSArray和NSMutableArray的完全相同的问题了。 - Anurag
3个回答

85

以下有两种选择:

- (NSMutableArray *)createMutableArray1:(NSArray *)array
{
    return [NSMutableArray arrayWithArray:array];
}

- (NSMutableArray *)createMutableArray2:(NSArray *)array
{
    return [[array mutableCopy] autorelease];
}

2
这是将可变数组转换回NSArray的代码:NSArray *array = [NSArray arrayWithArray:mutableArray]; - Nick N

18

使用-mutableCopy方法,确保平衡对象的引用计数。

NSMutableArray *mutableArray = [[immutableArray mutableCopy] autorelease];

3
现在的代码是:NSMutableArray *mutableArray = [immutableArray mutableCopy]; 该代码的作用是将不可变数组immutableArray复制一份并转换成可变数组mutableArray。 - Marcel Marino
@MarcelMarino 没错! - falkon21

11

试试这个

NSMutableArray *array = [[NSMutableArray alloc]initWithArray:your_array_name];

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