如何将数据从NSMutableString添加到NSArray中?
答
实际上,迈克是错误的。如果你要实例一个NSArray与单一的NSMutableString对象,你可以做到以下几点:
NSMutableString *myString; //Assuming your string is here
NSArray *array = [NSArray arrayWithObject:myString];
有一个在NSArray
没有arrayWithElements
(见NSArray documentation)
答
NSArray是不可变的,所以你不能给它添加值。您应该使用NSMutableArray以便通过addObject:
方法执行此操作。
NSMutableString *str = ...
NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject:str];
答
如果你想用实例化一个NSMutableString
对象的NSArray
,你可以做到以下几点:
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];
答
// 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
答
优雅的解决办法是这样的:
NSMutableString *str; //your string here
NSArray *newArray = @[str];
使用新的符号,这是小菜一碟。
对不起,错字。我的例子是固定的,使用'arrayWithObjects'方法。 – Mike 2010-01-08 08:23:48