如何将NSMutableString中的数据添加到NSArray中?

时间:2010-01-08 07:46:20

标签: objective-c nsarray nsmutablestring

是否可以将NSMutableString中的值添加到NSArray?什么是片段?

5 个答案:

答案 0 :(得分:4)

实际上,迈克错了。如果要使用单个NSMutableString对象实例化NSArray,可以执行以下操作:

NSMutableString *myString; //Assuming your string is here
NSArray *array = [NSArray arrayWithObject:myString];

arrayWithElements中没有NSArray(请参阅NSArray documentation

答案 1 :(得分:2)

如果要使用单个NSArray对象实例化NSMutableString,可以执行以下操作:

NSString *myString; //Assuming your string is here
NSArray *array = [NSArray arrayWithObjects:myString,nil];

请注意,NSArray将是不可变的 - 也就是说,在您创建对象后,无法向其添加或删除对象。如果您希望数组是可变的,则必须创建NSMutableArray。要以这种方式使用NSMutableArray,您可以执行以下操作:

NSString *myString; //Assuming your string is here
NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject:myString];

答案 2 :(得分:1)

NSArray是不可变的,因此您无法为其添加值。您应该使用NSMutableArray来使用addObject:方法执行此操作。

NSMutableString *str = ...
NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject:str];

答案 3 :(得分:0)

// You must use NSMutableArray to add Object to array

NSMutableArray *tableCellNames;
// arrayWithCapacity is a required parameter to define limit of your object.
tableCellNames = [NSMutableArray arrayWithCapacity:total_rows];

[tableCellNames addObject:title];
NSLog(@"Array table cell %@",tableCellNames);

//Thanks VKJ

答案 4 :(得分:0)

优雅的解决方案是:

NSMutableString *str; //your string here
NSArray *newArray = @[str];

使用新的符号,这是小菜一碟。