扯淡技能

iOS NSDecimalNumber在支付价格上的使用

2017-03-01  本文已影响25人  2897275c8a00

    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];

上一篇 下一篇

猜你喜欢

热点阅读