A. 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] 。
(1)java中浮點數擴展閱讀
基本數據類型的特點,位數,最大值和最小值。
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)
B. java里的浮點數是什麼意思
float表示單精度浮點數在機內佔4個位元組,用32位二進制描述。
浮點數在機內用指數型式表示,分解為:數符,尾數,指數符,指數四部分。
數符佔1位二進制,表示數的正負。
指數符佔1位二進制,表示指數的正負。
尾數表示浮點數有效數字,0.xxxxxxx,但不存開頭的0和點
指數存指數的有效數字。
指數佔多少位,尾數佔多少位,由計算機系統決定。
可能是數符加尾數佔24位,指數符加指數佔8位 -- float.
C. java里的浮點數是什麼意思。
有float和double。默認都是使用的double類型,Float是32位,4個位元組;Double是64位,8個位元組;推薦double
D. java浮點型數據表示方法有幾種,各是什麼
Java浮點型數據類型有float和double兩種,其中float是單精度浮點型,佔32位,其對應的封裝類為Float,double是雙精度浮點型,佔64位,其對應的封裝類為Double,關於Float類和Double類詳情請參考java api。
說明
數據類型所佔位數的范圍:
float表示數據范圍 3.4e-038~3.4e+038 ;
double表示數據范圍 1.7e-308~1.7e+308 ;
雙精度類型double比單精度類型float具有更高的精度,和更大的表示範圍,常常用於科學計算等高精度場合。
變數定義示例
floatf=123.456f;//指定變數f為float型
doubled=123.456;//指定變數d為double型,浮點數默認類型
E. java里的浮點數是什麼意思
這是位運算,一般在硬體控制方面用的多,光看錶達式的話無法知道其具體的意義是什麼。得結合實際才行。
&叫做「按位與」,其規則是:0&0=0
1&0=0
0&1=0
1&1=1
「|」叫做「按位或」,運算規則是:0|0=0
1|0=1
0|1=1
1|1=1
0x7fffff用32位二進製表示就是
0000
0000
0111
1111
1111
1111
1111
1111
根據按位與的運演算法則就是把bits的高9位清零。
0x800000用32位二進製表示是
0000
0000
1000
0000
0000
0000
0000
0000
根據按位或的運演算法則就是把第24位置1。
那麼綜合來看,((bits
&
0x7fffff)|0x800000)的意思就是先把bits的高9位清零,然後再把第24位置1。
關於前半部分,「<<」叫做左移,就是把所有二進制位向左移動若干位。和上面同理,就是先把bits的高9位清零後,再左移一位。
至於問號,就不用解釋了吧?
F. Java語言中的浮點型數據的float和double的單精度和雙精度到底是啥意思
主要有下面幾個區別,手冊上的,希望能幫到你
1、變數類型不同
float屬於單精度型浮點數據。
double屬於雙精度型浮點數據。
2、指數范圍不同
float的指數范圍為-127~128。
double而double的指數范圍為-1023~1024
3、表達式指數位不同
float的表達式為1bit(符號位)+8bits(指數位)+23bits(尾數位)
double的表達式為1bit(符號位)+ 11bits(指數位)+ 52bits(尾數位)
4、佔用內存空間不同
float佔4個位元組(32位)內存空間,其數值范圍為3.4E-38~3.4E+38。
double佔8 個位元組(64位)內存空間,其數值范圍為1.7E-308~1.7E+308。
5、有效位數不同
float只能提供七位有效數字。
double可提供16位有效數字。
G. java中如何判斷一個浮點數是float型的還是double的
java中常量
的浮點數字就被認為是double型的,而且不能直接賦給float型的變數。。像float
a=1.2;
這樣的編繹直接出錯。。要寫成float
a=1.2f;
才行。
H. Java中怎麼把浮點數轉變成整數只保留整數部分
通過轉換為字元串,再截取整數部分:
float a = 1.1f;//定義一個浮點變數a
String str = String.valueOf(a);//浮點變數a轉換為字元串str
int idx = str.lastIndexOf(".");//查找小數點的位置
String strNum = str.substring(0,idx);//截取從字元串開始到小數點位置的字元串,就是整數部分
int num = Integer.valueOf(strNum);//把整數部分通過Integer.valueof方法轉換為數字
擴展資料:
Java的浮點類型有兩種:float和double。
Java的浮點類型有固定的表數范圍和欄位長度,欄位長度和表數范圍和機器無關,double類型代表雙精度浮點數,float類型代表單精度浮點數。
Java的浮點數遵循IEEE754標准,採用二進制數據的科學計數法來表示浮點數,對於float型數值,第1位是符號位,接下里8位表示指數,再接下來的23位表示尾數;對於double類型數值,第一位也是符號位,接下來的11位表示指數,再接下來的52位表示尾數。
I. java中的float類型
java中的float類型
.浮點類型
1) 與整數類型一樣,同樣有固定的表述范圍和欄位長度,且不受具體的操作系統的影響,保證了Java的跨平台性
2) Java語言中,浮點類型有兩種表現形式,分別是:
a. 十進制數形式, 如3.14
b. 科學計數法,如,3.14e2, 3.14e-2, -3.14E2
3) Java語言中,默認的浮點數類型是double,聲明float類型的時候,後面必須添加字母f或者F,如3.14F,3.14f
4) Java中兩種浮點類型的表述范圍:
J. Java中怎麼把浮點數轉變成整數只保留整數部分
兩種方式:
1、通過強制類型轉換
float a=1.1f;//定義一個浮點變數a
int b = (int)a;//這里使用(int)方式對float進行強轉,結果為12、通過轉換為字元串,在截取整數部分
float a = 1.1f;//定義一個浮點變數a
String str = String.valueOf(a);//浮點變數a轉換為字元串str
int idx = str.lastIndexOf(".");//查找小數點的位置
String strNum = str.substring(0,idx);//截取從字元串開始到小數點位置的字元串,就是整數部分
int num = Integer.valueOf(strNum);//把整數部分通過Integer.valueof方法轉換為數字