double money=[strAmt doubleValue];//输入金额
feeRate=responseData[@"feeRate"];//后台返回费率
//计算服务费
double serviceCharge=money*([feeRate doubleValue]/100);
NSString *fourPointStr=[self formatStringAfterPoint:[NSString stringWithFormat:@"%.4f",serviceCharge]]; //两位小数四舍五入
serviceCharge=[fourPointStr doubleValue]; //拿这个真正的费率去显示和后面的计算
//四舍五入 龙哥给的方法
-(NSString *)formatStringAfterPoint:(NSString *)amtStr{
NSDecimalNumber *num=[NSDecimalNumber decimalNumberWithString:amtStr];
//规定保留两位小数
NSDecimalNumberHandler *handler = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundPlain scale:2 raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:NO];
num=[num decimalNumberByRoundingAccordingToBehavior:handler];
return num.stringValue;
}
本文介绍了一种在iOS应用中计算服务费的方法,通过将金额与后台返回的费率相乘来确定服务费,并使用了精确到小数点后两位的四舍五入方法。该方法首先将金额转换为double类型,然后乘以费率得到服务费,最后通过自定义的四舍五入函数确保结果的准确性。
2019

被折叠的 条评论
为什么被折叠?



