Iphone Cocoa如何显示带有一个小数点的浮点值而不进行舍入
我有一个浮点值,但当我需要向用户表示时,我需要它显示到小数点后一位,而不进行舍入。所以基本上我需要截断到小数点后一位。 例如Iphone Cocoa如何显示带有一个小数点的浮点值而不进行舍入,iphone,objective-c,ios,cocoa,ipad,Iphone,Objective C,Ios,Cocoa,Ipad,我有一个浮点值,但当我需要向用户表示时,我需要它显示到小数点后一位,而不进行舍入。所以基本上我需要截断到小数点后一位。 例如 95.56->95.5将为您执行此操作 -setMaximumFractionDigits: -setRoundingMode: 更新 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { NSNumberFor
95.56->95.5将为您执行此操作
-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;
}
#导入
int main(int argc,const char*argv[]{
@自动释放池{
NSNumberFormatter*nf=[[NSNumberFormatter新建]自动释放];
[nf setMaximumFractionDigits:1];
[nf setRoundingMode:NSNumberFormatterRoundFloor];
NSLog(@“编号为“@”[nf stringFromNumber:[NSNumber numberWithDouble:95.56]]);
}
返回0;
}
收益率:
2012-02-16 02:39:49.799数字格式[14592:903]数字是“95.5”
试试这个例子
float t = 25.55;
NSLog(@"%.1f", t);
如果设置%.2f得到25.55,则显示25.5,应该是这样的
sudo代码
将数字转换为字符串
在字符串中查找“.”
从开始到“.”位置+1[在此处查找答案][1][1]:@SaqibSaud,该页中的所有答案都将对值进行舍入,但我不想舍入wat应设置为舍入模式95.56到95.5将使用
NSNumberFormatterRoundFloor
,但有了它,我得到了95.6,你确定吗?这将是一个错误(除非另一个特征是干扰)(针对删除的响应),在你的建议下,我自己也尝试过。正如我所预料的那样。请参阅更新。如果此处t=25.56,则显示25.6,而我只想显示25.5即使我是这样想的,但数字格式化程序是更好的解决方案,与字符串操作相比,性能方面更好