Pregunta

¿Es posible agregar un valor de un NSMutableString en una NSArray? ¿Cuál es el fragmento?

¿Fue útil?

Solución

En realidad, Mike está equivocado. Si desea instanciar un nsArray con un solo objeto nsmutableString, puede hacer lo siguiente:

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

No hay arrayWithElements en NSArray (ver Documentación de NsArray)

Otros consejos

Si quieres instanciar un NSArray con un solo NSMutableString Objeto, puede hacer lo siguiente:

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

Tenga en cuenta que NsArray será inmutable; es decir, no puede agregarle o eliminar objetos después de haberlo hecho. Si desea que la matriz sea mutable, tendrá que crear un NSMutableArray. Para usar un NSMutableArray De esta manera, puedes hacer lo siguiente:

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

Nsarray es inmutable, por lo que no puede agregarle valores. Deberías usar Nsmutablearray para hacer eso con el addObject: método.

NSMutableString *str = ...
NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject:str];
// 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

Una solución elegante sería esta:

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

Usando la nueva notación, es un pedazo de pastel.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top