對於那些寧願示例代碼...
四捨五入到小數點後2位(12345.68):
NSDecimalNumber *originalNumber = [NSDecimalNumber decimalNumberWithString:@"12345.6789"];
NSDecimalNumberHandler *behavior = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundPlain
scale:2
raiseOnExactness:NO
raiseOnOverflow:NO
raiseOnUnderflow:NO
raiseOnDivideByZero:NO];
NSDecimalNumber *roundedNumber = [originalNumber decimalNumberByRoundingAccordingToBehavior:behavior];
舍入到最近的千(12000 ):
NSDecimalNumber *originalNumber = [NSDecimalNumber decimalNumberWithString:@"12345.6789"];
NSDecimalNumberHandler *behavior = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundPlain
scale:-3
raiseOnExactness:NO
raiseOnOverflow:NO
raiseOnUnderflow:NO
raiseOnDivideByZero:NO];
NSDecimalNumber *roundedNumber = [originalNumber decimalNumberByRoundingAccordingToBehavior:behavior];
這就是門票!謝謝! – 2010-10-23 15:59:14
優秀的鏈接:-) – 2012-06-11 13:03:58
RTFM不是響應。響應是「您只需調用decimalNumberByRoundingAccordingToBehavior:使用所需的NSDecimalNumberBehaviors協議。」 dev文檔被引用來提供各種協議的枚舉,而不是在這裏複製它們。 – CuriousRabbit 2013-10-14 16:06:07