我需要让NSNumber只显示4个小数点。这部分代码是有效的,但它输出的结果没有前导零。
double resultRoundToDecimal = [result doubleValue];
NSNumberFormatter *resultFormatter = [[NSNumberFormatter alloc] init];
[resultFormatter setRoundingMode:NSNumberFormatterRoundHalfUp];
[resultFormatter setMaximumFractionDigits:4];
resultData = [resultFormatter stringFromNumber:[NSNumber numberWithDouble:resultRoundToDecimal]];
例如: 1/3 = .3333
我想: 1/3 = 0.3333
我该怎么做?
答案 0 :(得分:2)
您也可以选择使用字符串格式化程序,如下所示
float val=1./3;
NSString *resultData=[NSString stringWithFormat:@"%0.4f",val];
NSLog(@"Result = %@",resultData);
答案 1 :(得分:0)
前置0或使用数字格式化器。
NSString *printStr = @"0";
printStr = [NSString stringByAppendingString: resultData];
否则,您可以使用数字格式化程序或类似的东西。如果你只是输出一个字符串,为什么不这样做呢?