關鍵區別–浮動與雙精度
在編程中,需要存儲數據。數據存儲在存儲器中。存儲數據的內存位置稱為變量。每個內存位置都可以存儲特定類型的數據。每種數據類型的內存大小不同。在Python等編程語言中,程序員不需要聲明變量的類型。在Java等編程語言中,程序員應該聲明變量類型。有許多數據類型,如char、int、float和double。char數據類型用於存儲單個字符值。用於存儲不帶小數點的整數類型的數據。float和double數據類型用於存儲帶小數點的數值。本文討論了浮點和雙精度的區別。float和double的關鍵區別在於float是單精度32位ieee754浮點數據類型,而double是雙精度64位ieee754浮點數據類型。
目錄
1. 概述和主要區別
2. 什麼是浮動
3. 什麼是雙倍
4. float和double的相似性
5. 並排比較-表格形式的浮點與雙精度
6. 摘要
什麼是浮動(float)?
浮點是單精度32位浮點。它是預定義的數據類型,由Java等編程語言支持。若要聲明浮點變量,請使用關鍵字“float”。因此它不能用於標識符名稱,如方法名和變量名。參考以下程序。
根據上面的程序,數字是一個變量,可以存儲一個浮點數。這裡用-20.5f代替-20.5。-20.5是雙精度的。為了指示編譯器將值存儲為浮點值,程序員應該編寫f或f。
什麼是雙重的(double)?
double是雙精度64位浮點。它是預定義的數據類型。若要聲明雙精度變量,請使用關鍵字“double”。因此,它不能用於標識符名稱,如方法名和變量名。參考以下程序。
根據上面的程序,數字是double類型的變量。打印數字將得到-20.5的輸出。在內存中需要64位來存儲該值。如果程序員寫的是-20.5,它被認為是一個雙精度。他也可以寫為-20.5d。寫d是可選的。
可以對數據類型執行類型轉換。它是將一種數據類型轉換為另一種數據類型的過程。將較小的數據類型分配給較大的數據類型時,不需要強制轉換。加寬以字節、short、int、long、float、double順序出現。將較大的數據類型分配給小數據類型時,有必要執行強制轉換。
根據上面的程序,num1和num2有float數據類型。求和被分配給變量sum。它是一個浮子。由於float是一個比double更小的數據類型,因此它可以直接分配給double變量,而不需要類型轉換。
x和y可以存儲雙數據類型。求和被分配給變量z。它也可以存儲double。類型轉換需要將較大的數據類型分配給較小的數據類型。因此,要將double值存儲到float變量,必須執行類型轉換,因為double是比float大的數據類型。
浮動(float)和雙重的(double)的共同點
- float和double都是Java等編程語言支持的預定義數據類型。
- float和double類型都不用於精度,如貨幣。
浮動(float)和雙重的(double)的區別
浮動對雙精度 | |
IEEE 7532位浮點型數據。 | double是雙精度64位IEEE 754浮點數據類型。 |
字節數 | |
浮點數是4個字節長。 | 8字節的長度是2倍。 |
默認值 | |
float的默認值為0.0f。 | double的默認值為0.0d。 |
關鍵字 | |
關鍵字“float”用於聲明浮點值。 | 關鍵字“double”用於聲明雙精度值。 |
所需內存 | |
浮點運算所需內存少於兩倍。 | double需要比float更多的內存。 |
總結 - 浮動(float) vs. 雙重的(double)
有必要在編程中存儲數據。這些數據存儲在內存位置,稱為變量。每個變量存儲特定類型的數據。數據類型有int、char、double和float等,本文討論了float和double兩種數據類型的區別。float和double的區別在於float是一種數據類型,它是單精度32位ieee754浮點,而double是數據類型,是雙精度64位ieee754浮點。