¿Cómo representar el dinero en Objective-C/iOS?
currency (2)
Utilice NSDecimalNumber. Claro que tiene gastos generales, pero a menos que pueda probar que eso es un problema, le encantará la precisión que le brinda.
http://www.cimgf.com/2008/04/23/cocoa-tutorial-dont-be-lazy-with-nsdecimalnumber-like-me/ http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSDecimalNumber_Class/Reference/Reference.html
Estoy trabajando en una aplicación para iPhone y quiero representar cantidades de dinero ($). No puedo usar float porque introducen cierta cantidad de errores de redondeo. ¿Qué puedo usar?
Estoy pensando en definir mi propia clase de dinero y guardar dólares y centavos como NSInteger internamente.
@interface Money : NSObject {
//$10.25 is stored as dollas=10 and pennies=25
NSInteger dollars;
NSInteger pennies;
}
Otra posible representación (más fácil de sumar y multiplicar) sería usar un solo NSInteger como centavos.
@interface Money : NSObject {
//$10.25 is stored as pennies=1025
NSInteger pennies;
}
¿Cuáles son tus pensamientos? ¿Hay un tipo "BigDecimal" que pueda usar?
Utilice la clase NSDecimalNumber
.