2010-08-05 26 views
26

Duplicar posible:
How to convert from int to string in objective c: example code…cómo convertir número entero de cadena en C objetiva

Por favor, dígame cómo convertir número entero de cadena en C objetiva. Quiero hacer una matriz y quiero poner número entero en él

+1

Y por qué una cadena? ¿Qué pasa con 'NSNumber'? ¿Debería ser una matriz de cadenas o una matriz de enteros? –

+3

La otra pregunta que ha vinculado como duplicado tiene el mismo título que este y tiene más de 9000 vistas, pero no responde directamente y de manera clara la pregunta del título: cómo convertir un 'int' a un 'cadena' en Objecive-C. La otra pregunta es compleja y es difícil extraer la respuesta real de ella. En realidad, es más probable que alguien que lo encuentre aprenda cómo (no) comparar cadenas que cómo convertir un int a un NSString. – Florin

Respuesta

66
NSArray *myArray = [NSArray arrayWithObjects:[NSNumber numberWithInt:1], [NSNumber numberWithInt:2], [NSNumber numberWithInt:3]]; 

Actualización para nueva sintaxis de Objective-C:

NSArray *myArray = @[@1, @2, @3]; 

Esas dos declaraciones son idénticos desde la perspectiva del compilador.

si acaba de querer utilizar un número entero en una cadena para poner en un cuadro de texto o algo:

int myInteger = 5; 
NSString* myNewString = [NSString stringWithFormat:@"%i", myInteger]; 
8
NSString* myNewString = [NSString stringWithFormat:@"%d", myInt]; 
14

Si realmente desea utilizar la secuencia:

NSString *number = [[NSString alloc] initWithFormat:@"%d", 123]; 

, pero yo recomendaría utilizando NSNumber:

NSNumber *number = [[NSNumber alloc] initWithInt:123]; 

Entonces solo agrégalo a la matriz.

[array addObject:number]; 

No olvides soltarlo después de eso, ya que lo creaste arriba.

[number release]; 
Cuestiones relacionadas