Me gustaría convertir un int en una cadena en Objective-C. ¿Cómo puedo hacer esto?
NSString *string = [NSString stringWithFormat:@"%d", theinteger];
Las primitivas se pueden convertir en objetos con la expresión @()
. Así que la forma más corta es transformar int
en NSNumber
y elegir la representación de cadena con el método stringValue
:
NSString *strValue = [@(myInt) stringValue];
o
NSString *strValue = @(myInt).stringValue;
int i = 25; NSString *myString = [NSString stringWithFormat:@"%d",i];
Esta es una de las muchas maneras.
Si esta cadena es para la presentación al usuario final, debe usar NSNumberFormatter
. Esto agregará miles de separadores y respetará la configuración de localización para el usuario:
NSInteger n = 10000; NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; formatter.numberStyle = NSNumberFormatterDecimalStyle; NSString *string = [formatter stringFromNumber:@(n)];
En los Estados Unidos, por ejemplo, eso crearía una cadena de 10,000
, pero en Alemania, eso sería de 10.000
.