如何将数字转换为格式的字符串?

时间:2011-05-31 01:51:35

标签: objective-c cocoa

说我有一个数字,双数或NSNumber,3.333333

我希望将其转换为@“3.3”

我该怎么做?

我可以使用NSString stringWithFormat吗?但格式是什么?

4 个答案:

答案 0 :(得分:3)

NSString *str = [NSString stringWithFormat:@"%.1f", yourDouble];

或NSNumber:

NSString *str = [NSString stringWithFormat:@"%.1f", [yourNSNumber doubleValue]];

答案 1 :(得分:1)

0.0f表示小数点前后的位数。因此,@ Wevah的回答是正确的,但记住这一点将为您节省时间。

答案 2 :(得分:1)

%f代表一个浮点变量,我相信你明白。你需要显示这个是一个浮点变量,因为它包含一个小数。就像人们之前说过的那样,你需要使用%。1f %只是告诉编译器即将出现一个特殊字符。 f告诉编译器它是一个float变量。 .1告诉编译器你的float变量有多少小数位。如果你想要有6个小数位,那么你就是%.6f

是的,您需要使用带格式的字符串。 假设你有一个UILabel,那么你会想说

theLabel'sName.text = [NSString stringWithFormat:@"%.1f", ((float)int1 / int2)];

你需要(float)告诉编译器无论int1 / int2是什么,都是一个浮点变量。

答案 3 :(得分:0)

如果您的NSNumber实例被调用myNumber,请执行

[myNumber stringValue];