用於表示溢位和出錯情況的三個特殊的浮點數值 :
• 正無窮大
• 負無窮大
• nan( 不是乙個數字 )
例如 , 一 浮點型(double,float)除以 0 的結果為正無窮大 。
system.out.println(1.0f/0); 結果為 infinity
浮點數值不適用於無法接受捨入誤差的金融計算中 。 例如 , 命令 system . out . println( 2.0 - 1.1 )
將列印出 0.8999999999999999 , 而不是人們想象的 0.9。
這種捨入誤差的主要原因是浮點數值採用二進位制系統表示 , 而在二進位制系統中無法精確地表示分數 1 / 10。 如果在數值計算中不允許有任何捨入誤差 ,就應該使用 bigdecimal類 。
十進位制小數換二進位制的規則是:乘2取整,然後將得到的整數總分順序排列(無需反序),再用結果的小數部分乘2,還用上述規則直到小數部分為0時或者達到需要的精度時為止。
二進位制的0.8125
0.8125×2=1.625是1
0.625×2=1.25是1
0.25×2=0.5是0
0.5×2=1是1
也就是說,0.8125的二進位制數是0.1101。
浮點型別深談
1 編寫本文目的 浮點運算已屬常用,但仍有深究必要,以消除其中可能的錯誤使用。2 預期讀者 4 正文 float格式簡談 inter 80386 80387 及以上型號cpu有三種浮點型別,即短實數 長實數和80位臨時實數,分別占用4位元組 8位元組和10位元組,對應著c c 中的float dou...
浮點列型別
對於浮點列型別,在mysql中單精度值使用4個位元組,雙精度值使用8個位元組。float型別用於表示近似數值資料型別。sql標準允許在關鍵字float後面的括號內選擇用位指定精度 但不能為指數範圍 mysql還支援可選的只用於確定儲存大小的精度規定。0到23的精度對應float列的4位元組單精度。2...
002 浮點型別
浮點型別表示數字包含小數部分。共兩種浮點型別 型別儲存要求 表示範圍 float 4 byte 大約 3.40282347e 38f 有效小數字數6 7位 double 8 byte 大約 1.79769313486231570e 308 有效小數為15位 double的數字的精度是float的兩倍...