Pregunta rápida: ¿es posible enviar un NSInteger a un objeto NSNumber? Necesito convertir la etiqueta de un objeto UIImageView a un objeto NSNumber porque necesito pasarlo como argumento a una función.¿Es posible enviar un NSInteger a NSNumber?
Respuesta
No se puede emitir porque NSInteger
no es un objeto, solo un alias para un tipo incorporado. Siempre se puede crear un nuevo NSNumber
objeto desde NSInteger
, así:
NSNumber *myNum = @(myNsIntValue);
o en la versión anterior del compilador, utilice
NSNumber *myNum = [NSNumber numberWithInteger:myNsIntValue];
Esta respuesta produce una advertencia en los nuevos dispositivos de 64 bits. Por favor, vea la respuesta más precisa de @ Kevin a continuación. –
@FullDecent Editado, gracias! – dasblinkenlight
Ésta es la respuesta más correcta y no va a producir inesperada error.
NSNumber *myNum = [NSNumber numberWithInteger:myNsIntValue];
Debido a que el doc dijo:
"numberWithInteger:. crea y devuelve un objeto NSNumber que contiene un valor dado, tratándolo como una NSInteger"
"numberWithInt: Crea y devuelve un objeto NSNumber que contiene un valor dado, tratándolo como un int firmado".
desde Apple LLVM Compiler 4.0
, hay una manera más fácil para crear NSNumber
objeto:
NSNumber *x = @1234;
NSNumber *y = @(anIntegerVariable);
NSNumber * z = @ (aDoubleValue); funciona igual de bien. – gnasher729
- 1. conversión de NSNumber a NSInteger
- 2. Comparar NSNumber con NSInteger
- 3. int vs NSNumber vs NSInteger
- 4. ¿Cuál es la diferencia entre NSNumber y NSInteger?
- 5. un NSNumber a un int
- 6. añadiendo objeto NSInteger a NSMutableArray
- 7. Cómo convertir un NSInteger a un int?
- 8. Comprobar si un objeto es NSInteger
- 9. ¿es necesario liberar un NSInteger en iphone?
- 10. Convertir NSInteger a NSIndexpath
- 11. ¿Convertir NSInteger a NSUInteger?
- 12. Añadir NSInteger a NSMutableData
- 13. ¿Cómo puedo convertir un NSInteger a NSTimeInterval
- 14. ¿Convierte NSString a NSInteger?
- 15. Convertir float a NSNumber
- 16. ¿Cómo convertir un doble a NSInteger?
- 17. ¿Es NSNumber exagerado para un contador de nivel de instancia?
- 18. ¿Es posible enviar "solicitudes" de LDAP a través de telnet?
- 19. Determine si NSNumber es NaN
- 20. ¿Es posible enviar mensajes a través de GTalk Intent?
- 21. NSInteger, NSNumber "propiedad" x 'con' retención 'atributo debe ser del tipo de objeto "
- 22. Cómo incrementar un NSNumber
- 23. ¿Es posible enviar cookies en un DownloadManager de Android?
- 24. Cómo convertir NSIndexPath a NSInteger?
- 25. Cómo convertir typedef enum a NSNumber?
- 26. ¿Es posible enviar encabezados personalizados con un XHR (solicitud "Ajax")?
- 27. cómo convertir NSinteger a String
- 28. ¿Por qué hay un NSInteger?
- 29. NSNumber arithmetic
- 30. Cómo convertir NSNumber a NSString
Es absolutamente posible emitir un NSInteger a un NSNumber *. El resultado probablemente conducirá a un bloqueo. Por supuesto, si tiene un número x, puede usar @ (x) para crear un objeto NSNumber con el valor x. Lo cual funcionará, pero no es un elenco. – gnasher729