如何打印1.5Kv而不是1500 V?

时间:2013-11-15 12:25:04

标签: ios objective-c

我正在制作一个计算器,我得到的结果要么非常小,要么非常大。那么我怎样才能改变结果的单位呢? 其中Vout被定义为浮点数。

Vout=1500;
self.myOutputValue.text = [NSString stringWithFormat:@"%.2f V",Vout];

这将打印1500.00 Volts 我应该怎么做才能打印1.5 KV

self.myOutputValue.text = [NSString stringWithFormat:@"%(  ????  ) KV",Vout];

2 个答案:

答案 0 :(得分:2)

NSString *str = nil;
if (Vout >= 1000.0)
{
    str = [NSString stringWithFormat:@"%.1f KV",Vout/1000.0];
}
else
{
    str = [NSString stringWithFormat:@"%.2f V",Vout];
}
self.myOutputValue.text = str;

答案 1 :(得分:2)

如果您喜欢使用工程格式的概念(即上下100个增量),那么github上的C / ObjectiveC中有一个很好的例程:EngineeringNotationFormatter。它将允许您指定要显示的有效位数,因此如果您选择了三位,您将获得125K,12.5K或1.25K。它还允许您向上或向下递增最小可能的增量(如果您将该类连接成一个旋转的增量器/减量器,则非常有用)。