标签:四舍五入
//单元测试通过 /** * 四舍五入并保留N位小数 * * @param number 数值字符串 * @param afterPoint 第几位小数 * * @return 处理后结果 */ +(NSString *)halfUpDecimalNumber:(NSString *)number afterPoint:(int)position { /* Mode的枚举类型 NSRoundPlain, // 四舍五入 NSRoundDown, // 只舍不入 NSRoundUp, // 不舍只入 NSRoundBankers // */ if ([number length]==0) { return @""; } NSDecimalNumber *ouncesDecimal = [NSDecimalNumber decimalNumberWithString:number]; NSString *formatStr=@"0."; for (int i=0; i<position; i++) { formatStr=[formatStr stringByAppendingString:@"0"]; } NSNumberFormatter *doubleValueWithMaxTwoDecimalPlaces = [[NSNumberFormatter alloc] init]; [doubleValueWithMaxTwoDecimalPlaces setNumberStyle:NSNumberFormatterDecimalStyle]; [doubleValueWithMaxTwoDecimalPlaces setPaddingCharacter:@""]; [doubleValueWithMaxTwoDecimalPlaces setPaddingPosition:NSNumberFormatterPadAfterSuffix]; [doubleValueWithMaxTwoDecimalPlaces setFormatWidth:position]; [doubleValueWithMaxTwoDecimalPlaces setPerMillSymbol:@""]; [doubleValueWithMaxTwoDecimalPlaces setAlwaysShowsDecimalSeparator:YES]; [doubleValueWithMaxTwoDecimalPlaces setGroupingSeparator:@""]; [doubleValueWithMaxTwoDecimalPlaces setRoundingMode:NSNumberFormatterRoundHalfUp]; [doubleValueWithMaxTwoDecimalPlaces setPositiveFormat:formatStr]; return [doubleValueWithMaxTwoDecimalPlaces stringFromNumber:ouncesDecimal]; }
标签:四舍五入
原文地址:http://38734603.blog.51cto.com/7240279/1660173