5

文档中没有关于这意味着什么的文字,但为了不遇到麻烦,理解它听起来非常重要。有人知道数字的“有效数字”是什么吗?

4

2 回答 2

17

虽然这个问题的另一个答案通常链接到对有效数字概念的正确解释,但NSNumberFormatter{uses|minimum|maximum}SignificantDigits属性与计算的精度无关。

有效数字是数字中从第一个非零数字到最后一个非零数字(含)的一组数字,通常除非尾随零是小数。如果已知或需要相对(百分比)误差,则将输出限制为特定数量的有效数字很有用。

首先,minimumSignificantDigitsandmaximumSignificantDigits没有效果,除非usesSignificantDigits设置为YES。如果是这种情况,它们的效果可能最容易使用示例来解释。

让我们取数字a = 123.4567b = 1.23c = 0.00123

假设或:minimumSignificantDigits = 0_12

如果maximumSignificantDigits = 3, 那么a将被格式化为“123”、b“1.23”和c“0.00123”。

如果maximumSignificantDigits = 4, 那么a将被格式化为“123​ .5 ”、b“1.23”和c“0.00123”。

如果maximumSignificantDigits = 2, 那么a将被格式化为“12​ 0 ”、b“1.2”和c“0.0012”。

假设minimumSignificantDigits = 4

如果maximumSignificantDigits = 4, 那么a将被格式化为 "123.​ 5 "、b"1.23​ 0 " 和c"0.00123​ 0 "。

注意:45转换是由于四舍五入模式而发生的,因为 a 中 4 后面的数字是 5。

于 2012-10-28T16:22:43.877 回答
0

有关有效数字的精彩教程,请参见此处。非常简单的解释是:在您的应用程序中用于计算的位数。

于 2009-08-24T13:23:39.560 回答