我想仅在数字不是整数时才以十进制格式显示数字。就像数字是浮点数一样,它必须以一个小数点显示。但如果数字是一个整数,它必须显示没有小数点,如下面的链接所示(代码的第二部分)
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中解决此问题。
答案 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];