首先请求到的数据都会变成字符串,先将字符串转化为double类型
double fdouble = [str doubleValue];
然后再设置小数点后的位数
[NSString stringWithFormat:@"%.1f", fdouble];
重点: 提供一个NSSing的扩展,传入需要保留的小数位,返回字符串。并且去掉末尾的0.
#import <Foundation/Foundation.h> @interface NSString (EliminateZero) // integer 必传
- (NSString *)eliminateZeroWithDouble:(NSInteger)integer; @end #import "NSString+EliminateZero.h" @implementation NSString (EliminateZero) - (NSString *)eliminateZeroWithDouble:(NSInteger)integer{ NSString *str = [self copy]; double fdouble = [str doubleValue]; NSString *ftotal;
switch (integer) {
case :
ftotal = [NSString stringWithFormat:@"%.1f", fdouble];
break;
case :
ftotal = [NSString stringWithFormat:@"%.2f", fdouble];
break;
case :
ftotal = [NSString stringWithFormat:@"%.3f", fdouble];
break;
case :
ftotal = [NSString stringWithFormat:@"%.4f", fdouble];
break;
case :
ftotal = [NSString stringWithFormat:@"%.5f", fdouble];
break;
default:
break;
} while ([ftotal hasSuffix:@""]) {
ftotal = [ftotal substringToIndex:[ftotal length]-];
} if ([ftotal hasSuffix:@"."]) {
ftotal = [ftotal substringToIndex:[ftotal length]-];
} return ftotal; } @end