首页 > 学院 > 开发设计 > 正文

一般电商APP金钱格式转换

2019-11-09 14:53:46
字体:
来源:转载
供稿:网友

对有一个电商APP来说,显示商品价格是最寻常不过了,但是有一个问题,就是小数显示时精准度的问题,为此,苹果官方有一个API可以解决此问题。

NSDecimalNumber,可以设置精准度,其有几个属性可以设置,如下:

NSRoundPlain, // Round up on a tie //貌似取整 NSRoundDown, // Always down == truncate //只舍不入NSRoundUp, // Always up // 只入不舍NSRoundBankers // on a tie round so last digit is even 貌似四舍五入

下面给出一个本人项目中用到代码范例:

/** * @brief 截取指定小数位的值 * * @param PRice 需要转化的数据 * @param position 有效小数位 * * @return 截取后数据 */+ (NSDecimalNumber *)notRounding:(NSString *)price{ NSDecimalNumberHandler* roundingBehavior = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundUp scale:0 raiSEOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:YES]; //固定12期,先计算出每期金额 NSDecimalNumber* priceNum=[NSDecimalNumber decimalNumberWithString:price]; NSDecimalNumber* formatPrice=[priceNum decimalNumberByDividingBy:[NSDecimalNumber decimalNumberWithString:@"12"] withBehavior:roundingBehavior]; return formatPrice;}

产品需求的小数保留两位,只入不舍,用上面的代码可以轻松实现,希望可以帮到你!


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表