相关疑难解决方法(0)

Objective-C中的舍入数字

我正在尝试进行一些数字舍入和转换为字符串以增强Objective-C程序中的输出.

我有一个浮点值,我想要舍入到最近的.5然后用它来设置标签上的文本.

例如:

1.4将是一串:1.5

1.2将是一串:1

0.2将是一个字符串:0

我花了一段时间在Google上寻找答案但是,作为Objective-C的菜鸟,我不知道该搜索什么!所以,我真的很感激指向正确的方向!

谢谢,阿什

macos formatting cocoa objective-c rounding

74
推荐指数
7
解决办法
10万
查看次数

修正浮点数

我想知道是否有一种方法可以轻松安全地纠正浮点数.

例如,

输入时:"32 + 32.1"结果:"64.0999999999999"

此外,我必须提到,使用科学记数法时,这种情况经常发生."(2.3*10 ^ 23)*(1.452*10 ^ 23)"返回:"3.339599999999999999e + 46"

最后,有时返回的数字是:ex.123.0000000000001

谢谢您的帮助!

编辑

得到批准的答案很棒.但我发现对我有用的是在NSString stringWithFormat中使用%g和double.%g似乎非常恰当地围绕一切.恩.

    answer.text = [NSString stringWithFormat@" %g ", doubleAnswer];
Run Code Online (Sandbox Code Playgroud)

在计算中使用双打,然后使用该方法似乎对我有用,我希望这对其他人也有帮助.如果这不是您要找的答案,请查看已批准的答案!

iphone xcode cocoa cocoa-touch ios

6
推荐指数
1
解决办法
402
查看次数

将浮点数格式化为NSString时,会截断额外的零

我试图格式化float如下:

1.1500将显示为"$ 1.15"
1.1000将显示为"$ 1.10"
1.0000将显示为"$ 1.00"
1.4710将显示为"$ 1.471"
1.4711将显示为"$ 1.4711"

我试过了

NSString *answer = [NSString stringWithFormat:@"$ %.2f",myvalue];
Run Code Online (Sandbox Code Playgroud)

cocoa cocoa-touch objective-c number-formatting

1
推荐指数
1
解决办法
2198
查看次数