Double.toString(0.1)产生“0.1”,但 0.1 是浮点数。
浮点数无法在程序语言中精确表示,但 Double.toString 会产生精确的结果(0.1),它是如何做到的,它总是产生数学上等于双精度文字的结果吗?
假设文字是双精度的。
这是我看到的问题:
当使用Apache POI读取excel文件时,XSSFCell.getNumericCellValue只能返回double,如果我使用BigDecimal.valueOf将其转换为BigDecimal,总是安全的,为什么?