文档中没有关于这意味着什么的文字,但为了不遇到麻烦,理解它听起来非常重要。有人知道数字的“有效数字”是什么吗?
2 回答
虽然这个问题的另一个答案通常链接到对有效数字概念的正确解释,但NSNumberFormatter的{uses|minimum|maximum}SignificantDigits属性与计算的精度无关。
有效数字是数字中从第一个非零数字到最后一个非零数字(含)的一组数字,通常除非尾随零是小数。如果已知或需要相对(百分比)误差,则将输出限制为特定数量的有效数字很有用。
首先,minimumSignificantDigitsandmaximumSignificantDigits没有效果,除非usesSignificantDigits设置为YES。如果是这种情况,它们的效果可能最容易使用示例来解释。
让我们取数字a = 123.4567、b = 1.23和c = 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 "。
注意:4 → 5转换是由于四舍五入模式而发生的,因为 a 中 4 后面的数字是 5。
有关有效数字的精彩教程,请参见此处。非常简单的解释是:在您的应用程序中用于计算的位数。