Copyright © 2017年ZaneWangWang. All rights reserved.
项目中出现支付的时候后台会与我们下单时候传的价格进行对比,但如果涉及到运算和四舍五入难以避免,因此最好的四舍五入方案就是跟后台使用的BigDecimal四舍五入规则一样的NSDecimalNumber,下面简单介绍一下NSDecimalNumber的使用:
1.这里先设置保留位数主要就是scale后边的参数还有RoundingMode
NSDecimalNumberHandler*roundUp = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundBankers scale:2 raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:YES];
2.计算
NSDecimalNumber*number1= [NSDecimalNumber decimalNumberWithString:@"13.5555"];
NSDecimalNumber*number2 = [NSDecimalNumber decimalNumberWithString:@"7"];
NSDecimalNumber*number3 = [number1 decimalNumberByMultiplyingBy:number2 withBehavior:roundUp];//这个主要是计算的乘法,可以选用其他计算方式
3.得到想要的字符串
NSString *price = [NSString stringWithFormat:@"¥%@",number3];