gpt4 book ai didi

swift - NSNumberFormatterStyle.SpellOutStyle 中的错误?

转载 作者:可可西里 更新时间:2023-11-01 02:17:56 25 4
gpt4 key购买 nike

当我对较大的数字(不是溢出类型的数字)使用 NSNumberFormatterStyle.SpellOutStyle 时,它​​似乎在千万亿中的某个地方分解。

let formatter = NSNumberFormatter()
formatter.numberStyle = NSNumberFormatterStyle.SpellOutStyle
print(formatter.stringFromNumber(50000000000000000))

输出:十八千万亿十四万亿三千九百八十亿九百八十万亿四十八万一九百八十四

这是怎么回事?错误?还是我遇到了一些我不知道的限制? Int 直到 2^63 才溢出,是 64 位有符号整数...但是数字格式化程序在 2^54 处有一些限制?

最佳答案

我没有解决方案,但我有一个猜测:

NSNumberFormatter 使用 Double 来存储值(53 位),所以你的值太大了。

我想它会使格式化程序生成错误的拼写而不是失败并显示真正的错误消息:所以我会说,这是 NSNumberFormatterStyle.SpellOutStyle 的一个错误,它不应该吐出一个失败时的虚拟值。

关于swift - NSNumberFormatterStyle.SpellOutStyle 中的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35205450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com