float 單精度浮點 32bit,
double 雙精度浮點64bit,
decimal是高精度 128bit,浮點型。
float double 是 基本類型(primitive type),decimal不是。
float 有效數字7位,範圍 ±1.5 × 10E−45 to ±3.4 × 10E38
double 有效數字15/16 位,範圍 ±5.0 × 10 E−324 to ±1.7 × 10E308
decimal 有效數字 28/29 位,範圍 ±1.0 × 10E−28 to ±7.9 × 10E28
( E -- 下接幾回方)
decimal的有效位數很大,達到了28位,可是表示的數據範圍卻比float和double類型小。
使用的時候會對計算時的性能有影響。
常數寫法:
float f = 12.3F; (帶F)
double x=12.3; (不帶就是double)
decimal d = 12.30M; (帶M)
浮點數運算會有精度損失問題,有精度損失時程序不會報告,要程序員本身注意。程序員