float和double的範圍和精度

2021-10-05 07:31:22 字數 550 閱讀 1902

float 4個位元組,32位,float:1bit(符號位)+8bits(指數字+23bits(尾數字)

float:2^23 = 8388608,共七位,意味著最多能有7位有效數字,但絕對能保證的為6位,也即float的精度為6~7位有效數字;

double 8個位元組,64位,double:1bit(符號位)+ 11bits(指數字)+ 52bits(尾數字)

double:2^52 = 4503599627370496,一共16位,同理,double的精度為15~16位。

float jingdufloat = 3.327357891f;

system.out.println(jingdufloat);

double jingdudouble = 3.327357891927495768d;

system.out.println(jingdudouble);

輸入結果並不是想象中定義的位數,而是:

3.327358

3.327357891927496

float和double取值範圍

最近在複習的時候發現基礎太薄弱,對於float和double雖然了解所佔位元組數,但不知道他們的取值範圍是多少,這對參加大廠筆試題時是十分不利的 1.八種資料型別的分類如下 第一類 整型 byte short int long 第二類 浮點型 float double 第三類 邏輯型 boolean...

Float和Double的範圍和精度

float與d ouble的範圍和精度 float和double的範圍是由指數的位數來決定的。float的指數字有8位,而double的指數字有11位,分布如下 float 1bit 符號位 8bits 指數字 23bits 尾數字 double 1bit 符號位 11bits 指數字 52bits...

float與double的範圍和精度

floa 與 double 的範圍和精度 1.範圍 float和double的範圍是由指數的位數來決定的。float的指數字有8位,而double的指數字有11位,分布如下 float 1bit 符號位 8bits 指數字 23bits 尾數字 double 1bit 符號位 11bits 指數字 ...