我正在开发一个java应用程序,使用 double 类型来保存单价、数量等的值。我发现MSSQL中显示的一些值是NAN并抛出异常 当我尝试重用它时出现无限错误。这太不合理了,我可以保存它,但不能再使用它了!我认为MSSQL中的NAN值在它第一次出现在java中时必须是有效的,所以我可以保存。如何以及何时出现这个问题吗?
最佳答案
您不应该永远使用 double 或 float 来存储价格。请改用十进制。 Double 和 float 数据类型并不是非常精确。
FLOAT 和 REAL 数据类型都是与 float 值数据一起使用的近似数字数据类型。 float 据是近似值;并非数据类型范围内的所有值都可以精确表示。
关于java - MSSQL 中浮点字段中的 NaN 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/629257/