導航:首頁 > 編程語言 > doublefloatjava

doublefloatjava

發布時間:2023-04-27 14:19:52

A. java 中float 和double有什麼區別,對於賦值來說,求解。謝謝!

  1. float為單精度浮點類型,佔4個位元組,能表示的數范圍小;double為雙精度浮點類型,佔8個位元組,能表示的數范圍大。

  2. 對岩咐虧於賦值來說,因為聲明浮點數時默認為double類型,所以float需要簡斗在數粗神的的後面添加f/F;

    例:

    float a=1.2 //錯誤

    float a=1.2f //正確

    float a=1.2F //正確

    double b=1.2 //正確

    double b=1.2d //正確

    double b=1.2D //正確

B. 在java中的double和float類型數據相除為什麼可以除以零

java中就是這么規定的,沒有什麼為什麼,具體規定如下:

  1. 任意整數(byte、short、int、long皆可)除以回整數0結果為ArithmeticException;

  2. 0除以浮點0結果為NAN,細分的話包括以下三種情況:

    (1)0/0.0

    (2)0.0/0.0

    (3)0.0/0

    情況(3)雖然除的是個整數0,但在運算過程中發生了類型轉化變成了浮點0;

  3. 任意數(答八大基本類型皆可)除以浮點0結果為Infinity/-Infinity。

如果問為什麼會這樣,可以理解為在java中浮點數0並非一個准確值,而是一個無限接近0的數。

此外,Float.NaN!=Float.NAN,Double.NaN!=Double.NaN;但是Float.POSITIVE_INFINITY==Float.POSITIVE_INFINITY==Double.POSITIVE_INFINITY、

Float.NEGATIVE_INFINITY==Float.NEGATIVE_INFINITY==Double.NEGATIVE_INFINITY。

C. java中float和double的取值范圍是什麼

float:4位元組(32bit),IEEE 754. 取值范圍:

[-3.40282346638528860e+38 , -1.40129846432481707e-45] ∪ [1.40129846432481707e-45 ~ 3.40282346638528860e+38] 。

double: 8位元組(64bit) ,IEEE 754. 取值范老咐圍:

[-1.79769313486231570e+308,-4.94065645841246544e-324] ∪ [4.94065645841246544e-324,1.79769313486231570e+308] 。

(3)doublefloatjava擴展閱讀

基本數據類型的特點,位數,最大值和最小值。

1、

基本類型:short 二進制位數:16

包裝類:java.lang.Short

最小值:Short.MIN_VALUE=-32768 (-2的15此方)

最大值:Short.MAX_VALUE=32767 (2的15次方-1)

2、

基本類型:int 二進制位數:32

包裝類:java.lang.Integer

最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方)

最大值:Integer.MAX_VALUE= 2147483647 (2的31次方-1)

3、

基本類型:long 二進制位數:64

包裝類:java.lang.Long

最小值:Long.MIN_VALUE=-9223372036854775808 (-2的63次方)

最大值:Long.MAX_VALUE=9223372036854775807 (2的63次方-1)

4、

基本類型:float 二進制位數:32

包裝雀含旦類:java.lang.Float

最小值:Float.MIN_VALUE=1.4E-45 (2的-149次方)

最大值:Float.MAX_VALUE=3.4028235E38 (2的128次方-1)

5、

基本類型:double 二進制位數:64

包裝類:java.lang.Double

最小值:Double.MIN_VALUE=4.9E-324 (2的-1074次方)

最大值:Double.MAX_VALUE=1.7976931348623157E308 (頃擾2的1024次方-1)

D. java 判斷是float還是double

向參與運算的操作數的類型中的最高精度轉型,所以答案是float類型。如果版有小數參與運算,則為double類型權,因為java默認小數直接量是double類型的。如:
int
n=100;
float
f=1.1f;
則n+f的結果是float類型的,而6.0+n+f的結果是double類型的。

E. java double和float的區別

一、float是單精度類型,精度是8位有效數字,取值范圍是10的-38次方到10的38次方,float占 用4個位元組的存儲空間
二、double是雙精度類型,精度是17位有效數字,取值范圍是10的-308次方到10的308次 方,double佔用8個位元組的存儲空間
三、當你不聲明的時候,默認小數都用double來表示,所以如果要用float的話,則應該在其 後加上f
例如:float a=1.3f;如果寫作:float a=1.3;
則會提示不能將double轉化成float 這成為窄型轉化
如果要用float來修飾的話,則應該使用float a=1.3f
四、注意float是8位有效數字,第7位數字將會產生四捨五入
所以如果一個float變數 這樣定義: float a=1.32344435f; 則第7位將產生四捨五入(5及5 以下的都將捨去)
五、轉載至http://www.360doc.com/content/17/0501/18/42534750_650101155.shtml

F. 在java中double型和float常量有什麼區別啊

1.
我感覺你可能更想問的問題是:java中敏轎double和float類型有和區別?建議修改問題,把【常量】二字去掉;
2.
這兩種數據類型的主要區別是:double取值范圍和精度比float都要高;
3.
java中,次要區別是二者在變數定義上有些不同,比如:floath
a
=
2.3f;
double
a
=
2.3;float類型值後面有一賀賣個f;
4.
在很多環境下(java/C#.....)他們橋拍肆的區別大約都是以上這些。

G. java中float和double的區別

float表示單精度浮點數在機內佔4個位元組,用32位二進制描述。
double表示雙精度浮寬鉛大點數在機內佔8個位元組,用64位二進制描述。
浮點數在機內用指數型式表示,分解為:數符,尾數,指數符,指數四部分。
數符佔1位二進制,表示數的正負。
指數符佔1位二進制,表示指數的正負。
尾數表示浮點數有效數字,0.xxxxxxx,但不存開頭的0和點
指數存指數的有效數字。
指數佔多少位,尾數佔多少位,由計算機系統決定。
可能是數符加尾數佔24位,指數符加指數佔8位 -- float.
數符加尾數佔48位,指數符加指數佔16位 -- double.
知道了這四部分的佔位,按二進制估計大小范慎豎圍,再換算為十進制,就是浮點數的數值范圍。
對編程人員來說,double 和 float 的區別是double精度高,有效數字16位,float精度7位。但double消耗內存是float的兩倍,double的運算速度比float慢得多,java語言中數學函數名稱double 和 float不同,激彎不要寫錯,能用單精度時不要用雙精度(以省內存,加快運算速度)。

H. java float和double的區別

單精度浮點數(float)與雙精度浮點數(double)的區別如下:
(1)在內存中佔有的字版節數不同
單精度權浮點數在機內佔4個位元組
雙精度浮點數在機內佔8個位元組
(2)有效數字位數不同
單精度浮點數有效數字8位
雙精度浮點數有效數字16位
(3)所能表示數的范圍不同
單精度浮點的表示範圍:-3.40E+38 ~ +3.40E+38
雙精度浮點的表示範圍:-1.79E+308 ~ +1.79E+308
(4)在程序中處理速度不同一般來說,CPU處理單精度浮點數的速度比處理雙精度浮點數快

I. java double和float的區別

1、內存結構
float和double的范圍是由指數的位數來決定的。
float的指數位有8位,而double的指數位枯渣有11位,分布如下:
float:
1bit(符號位)
8bits(指數位)
23bits(尾數位)
double:
1bit(符號位)
11bits(指數位)
52bits(尾數位)
於是,float的指數范圍為-128~+127,而double的指數范圍為-1024~+1023,並且指數位是按補碼的形式來劃分的。
其中負指數決定了浮點數所能表達毀敗困的絕對值最小的非零數;而正指數決定了浮纖念點數所能表達的絕對值最大的數,也即決定了浮點數的取值范圍。
float的范圍為-2^128
~
+2^127,也即-3.40e+38
~
+3.40e+38;double的范圍為-2^1024
~
+2^1023,也即-1.79e+308
~
+1.79e+308。
2.
精度
float和double的精度是由尾數的位數來決定的。浮點數在內存中是按科學計數法來存儲的,其整數部分始終是一個隱含著的「1」,由於它是不變的,故不能對精度造成影響。
float:2^23
=
8388608,一共七位,由於最左為1的一位省略了,這意味著最多能表示8位數:
2*8388608
=
16777216
。有8位有效數字,但絕對能保證的為7位,也即
float的精度為7~8位有效數字
double:2^52
=
4503599627370496,一共16位,同理,
double的精度為16~17位
之所以不能用f1==f2來判斷兩個數相等,是因為雖然f1和f2在可能是兩個不同的數字,但是受到浮點數表示精度的限制,有可能會錯誤的判斷兩個數相等!

J. java中float和double的取值范圍是什麼

1、float:4位元組(32bit),IEEE 754。取值范圍:

[-3.40282346638528860e+38 , -1.40129846432481707e-45] ∪ [1.40129846432481707e-45 ~ 3.40282346638528860e+38] 。

2、毀芹double: 8位元組(64bit) ,IEEE 754。取值范圍:

[-1.79769313486231570e+308,-4.94065645841246544e-324] ∪ [4.94065645841246544e-324,1.79769313486231570e+308] 。

(10)doublefloatjava擴展閱讀:

float和double的范圍精度

float和double的精度是由尾數的位數來決定的。浮點數在內存中是按科學計數法來存儲的,其整數部分始終是一個隱含著的「1」,由於它是不變的,故不能對精度造成影響。纖攜畢

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

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

閱讀全文

與doublefloatjava相關的資料

熱點內容
windows7系統共享文件 瀏覽:62
ps前往文件夾 瀏覽:694
信捷plc編程用哪個軟體 瀏覽:939
vba導入文件 瀏覽:690
更新後版本英文怎麼說 瀏覽:267
桌面雲配置文件分離 瀏覽:505
iphone5如何升級4g網路 瀏覽:5
團購是在哪個app 瀏覽:897
打開多個word文檔圖片就不能顯示 瀏覽:855
騰訊新聞怎麼切換版本 瀏覽:269
app安裝失敗用不了 瀏覽:326
桌面文件滑鼠點開會變大變小 瀏覽:536
手機誤刪系統文件開不了機 瀏覽:883
微信兔子甩耳朵 瀏覽:998
android藍牙傳文件在哪裡 瀏覽:354
蘋果6s軟解是真的嗎 瀏覽:310
c語言代碼量大 瀏覽:874
最新網路衛星導航如何使用 瀏覽:425
以下哪些文件屬於圖像文件 瀏覽:774
zycommentjs 瀏覽:414

友情鏈接