iOS中NSDecimalNumber类的一个BUG

我的编程环境是XCode 11.5。

今天在测试秒表代码的时候偶然发现秒表计数会是负值,由此进行了下面的一番探索。

为了精确,秒表走过的秒数用Decimal类型:

@Published var elapsedSeconds_exactly: Decimal = 0.0

在实际使用时需要将其转换为整数类型,由于Decimal没有直接的方法转换为整数,所以我用的是如下的迂回战术:

NSDecimalNumber(decimal: elapsedSeconds_exactly).intValue

前面提到秒表会显示负数的秒数,所以马上下断点,发现elapsedSeconds_exactly的值如下(正数86.457302045822143488):

(lldb) 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章