我有一个浮点值,但是当我需要向用户表示时,我需要它显示到一个小数位,而不是四舍五入。所以基本上我需要截断到最多一个小数位。 例如 95.56 - > 95.5
答案 0 :(得分:6)
NSNumberFormatter
会为你做这件事。
-setMaximumFractionDigits:
-setRoundingMode:
<强>更新强>
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSNumberFormatter * nf = [[NSNumberFormatter new] autorelease];
[nf setMaximumFractionDigits:1];
[nf setRoundingMode:NSNumberFormatterRoundFloor];
NSLog(@"The number is '%@'", [nf stringFromNumber:[NSNumber numberWithDouble:95.56]]);
}
return 0;
}
收率:
2012-02-16 02:39:49.799 NumberFormatter [14592:903]这个数字是'95 .5'
答案 1 :(得分:5)
试试这个例子
float t = 25.55;
NSLog(@"%.1f", t);
如果设置%.2f则显示25.5
答案 2 :(得分:1)
应该是这样的
sudo代码
将数字转换为字符串。
找到“。”在字符串中。
从开始到“。”创建子字符串。位置+1