/**
初始化方法
@param roundingMode 舍入方式
@param scale 小数点后舍入值的位数。
@param exact 精度错误处理;YES:如果出现错误,将引发异常,NO:忽略错误并将控制权放回给调用者。
@param overflow 溢出错误处理;YES:如果出现错误,将引发异常,NO:忽略错误并将控制权放回给调用者。
@param underflow 下溢错误处理;YES:如果出现错误,将引发异常,NO:忽略错误并将控制权放回给调用者。
@param divideByZero 除以0的错误处理;YES:如果出现错误,将引发异常,NO:忽略错误并将控制权放回给调用者。
@return NSDecimalNumberHandler对象
*/
NSDecimalNumberHandler *hander = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundDown
scale:3
raiseOnExactness:NO
raiseOnOverflow:NO
raiseOnUnderflow:NO
raiseOnDivideByZero:NO];
NSDecimalNumber *num = [[NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%f",144.99999]] decimalNumberByDividingBy :[NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%f",100.0]]
withBehavior:hander];
NSLog(@"num===%@",num);
打印结果 : num===1.449
NSRoundingMode的几种方式:
- NSRoundPlain:四舍五入
- NSRoundDown:只舍不入 (金钱类计算)
- NSRoundUp:只入不舍
网友评论