@interface NSString (Helper)
/**
* 截取小数点位数,最多保留digit位,且小数点后多余的0将被去掉.
*
* @param digit 小数点后最多保留位数
*
* @return 返回一个截取后的小数字符串对象
*/
- (NSString *)floatStringTruncateWithMaxReservedDecimalPointDigit:(NSInteger)digit;
@end
@implementation NSString (Helper)
- (NSString *)floatStringTruncateWithMaxReservedDecimalPointDigit:(NSInteger)digit
{
if (self.length == 0) {
return @"0";
}
if ([self rangeOfString:@"."].length == 0) { //不是小数
return self;
}
NSMutableString *formatString = [NSMutableString stringWithString:@"%.f"];
[formatString insertString:[NSString stringWithFormat:@"%ld", (long)digit] atIndex:2];
NSString *truncatedStr = [NSString stringWithFormat:formatString, self.floatValue];
NSString *rs = [NSString stringWithFormat:@"%@", @(truncatedStr.floatValue)];
return rs;
}
@end
网友评论