目前,[NSDecimalNumber longLongValue]
使用字符串@"9999999999999999"
返回创建10000000000000000
。
这意味着该类将其值转换为double
first,然后重新转换为SInt64
( signed long long
)
如何规避这种行为?我想得到范围内的精确整数SInt64
。
PS。我考虑过转换为NSString
并重新转换为SInt64
with NSScanner
or strtoll
,但我相信有更好的方法。但如果你确定没有其他办法,请告诉我。