iPhone中字符串的小数点调整

时间:2009-08-18 22:51:50

标签: iphone

我想仅在数字不是整数时才以十进制格式显示数字。就像数字是浮点数一样,它必须以一个小数点显示。但如果数字是一个整数,它必须显示没有小数点,如下面的链接所示(代码的第二部分)

http://www.csharp-examples.net/string-format-double/

我正在使用像

这样的字符串

NSString * temp = [NSString stringWithFormat:@“0.1f”,10];

这个温度是10.0我希望它是10但是如果我这样做

NSString * temp = [NSString stringWithFormat:@“0.1f”,10.9];

然后它必须像10.9

如何在iPhone中解决此问题。

2 个答案:

答案 0 :(得分:1)

您可以针对强制转换检查字符串的值,然后相应地格式化字符串:

float     x = 42.1;  // whatever
long      x_int = x;
bool      is_integer = x_int == x;
NSString* temp = nil;

if (is_integer)
{
    temp = [NSString stringWithFormat:@"%d", x_int];
}
else
{
    temp = [NSString stringWithFormat:@"%0.1f", x];
}

答案 1 :(得分:0)

我得到了解决方案,

NSString * temp = [NSString stringWithFormat:@“%g”,10.9];