M
suffix betyder att talet är BigDecimal
. Du kan kontrollera detta i REPL
user=> (class 1)
java.lang.Long
user=> (class 1.0)
java.lang.Double
user=> (class 1M)
java.math.BigDecimal
Eftersom din databas kolumntyp är decimal(5,2)
och decimal(7,2)
, det är inte säkert att konvertera siffrorna till float
eller double
eftersom dessa flyttalstyper inte kan representera alla siffror för decimal(5,2)
eller decimal(7,2)
exakt.
Du kan googla med sökordet "floating point inexakthet". Det finns massor av artiklar och frågor och svar, även inom Stackoverflow.