我知道在将它作为NSString的一部分显示时如何格式化浮点数(参见例如Make a float only show two decimal places)但是有没有办法动态设置要显示的小数位数?例如,如果我知道我想要int dig
个数字,我可以修改下面的表达式来根据需要格式化我的浮点数吗?
NSString* formattedNumber = [NSString stringWithFormat:@"%.02f", myFloat];
我知道我可以使用NSNumberFormatter
执行此操作,但我正在寻找更直接的方法。
答案 0 :(得分:0)
请参阅IEEE printf specification,了解有关格式说明符的所有信息。
你想:
int dig = 4; // for example
NSString *formattedNumber = [NSString stringWithFormat:@"%.*f", dig, myFloat];
dig
用于*
表示小数点后的位数。