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

javalongfloat

發布時間:2022-11-01 06:00:49

A. java的long類型與float相加出錯問題

首先float只能精確到小數點後第7位,後面的就不確定了。按照上面的,結果是300000124.23。float會用E來表示,也就是3.0000012(4)E8。而4正好在第8位,所以是不精確的,不確定的。如果你是30000000L,那麼結果就是3.0000124E7了。

B. java裡面怎麼把long類型轉化為floatFloat.parseFloat()轉不了...

Float.parseFloat(String num) 接受參數為string,所以必須先轉換long為string
public static void main(String[] args) {

long num = 10000000000000L;
float f1 = (float) num;
float f = Float.parseFloat(String.valueOf(num));

System.out.println(f1);
System.out.println(f);
}

long轉換為float可能會發生精度丟失的。

C. java中,long型佔64位元組,float型佔32位元組,為什麼long表示的最大數還沒float大

public class MaxValueTest {

/**
* @param args
*/
public static void main(String[] args) {
System.out.println(Long.SIZE);
System.out.println(Long.MAX_VALUE);
System.out.println(Float.SIZE);
System.out.println(Float.MAX_VALUE);

}

}

輸出:
64
9223372036854775807
32
3.4028235E38

----
Long是整形,他是精確的,精確到個位的。
而Float是浮點型,它是有有效位數的,從上面的結果可以看出,3.4028235才是Float的精確位數。

整形和浮點型在內存中的表示方法是不一樣的,
對於浮點型來說,有一部分是用來表示有效位數的,有一部分是用來表示多少次方。

具體的你可以去參考一下,整形和浮點型在內存中的表示方式。

D. java中為什麼long的范圍小於float求解答

因為float的32bit中
一位表示符號位,8bit表示指數,23bit表示底數。而long直接都用來存數了。當然不如有指數的float范圍大了。

E. JAVA的數據類型轉換,資料說long可以直接轉換成float。但float是4個位元組,8個位元組的long型不會丟失精度

當然會丟失精度,float精度7位。
但double消耗內存是float的兩倍,double的運算速度比float慢得多,java語言中數學函數名稱double 和 float不同,不要寫錯,能用單精度時不要用雙精度(以省內存,加快運算速度)

F. java中為什麼long的范圍小於float求解答

因為long要存儲嚴格的整數,有嚴格的范圍限制,精度永遠為1
float是浮動精度。支持小數,但數值達到一定大的時候,就會出現誤差。

當float的值達到一定大小,程序中遇到2個float比較的時候會出現應該相等,但結果不等,或者應該不等卻相等的情況。因為float是有誤差的

long沒有誤差,但不能有小數。。

G. java 中byte.short,int,long,float,double 的取值范圍分別是多少

其中byte、short、int、long都是表示整數的,只不過他們的取值范圍不一樣
byte的取值范圍為-128~127,佔用1個位元組(-2的7次方到2的7次方-1)
short的取值范圍為-32768~32767,佔用2個位元組(-2的15次方到2的15次方-1)
int的取值范圍為(-2147483648~2147483647),佔用4個位元組(-2的31次方到2的31次方-1)
long的取值范圍為(-9223372036854774808~9223372036854774807),佔用8個位元組(-2的63次方到2的63次方-1)
float和double是表示浮點型的數據類型,他們之間的區別在於他們的精確度不同

float 3.402823e+38 ~ 1.401298e-45(e+38表示是乘以10的38次方,同樣,e-45表示乘以10的負45次方)佔用4個位元組

double 1.797693e+308~ 4.9000000e-324 佔用8個位元組

double型比float型存儲范圍更大,精度更高,所以通常的浮點型的數據在不聲明的情況下都是double型的,如果要表示一個數據是float型的,可以在數據後面加上「F」。

浮點型的數據是不能完全精確的,所以有的時候在計算的時候可能會在小數點最後幾位出現浮動,這是正常的。

H. java中long和float的大小問題

int 32bit
long 64bit
float 32bit
double 62bit
自己參考吧!另外說聲,byte,short,int,long都屬於整形數據類型
而float和double屬於浮點型,而浮點型默認的是double,這就意味著你聲明float t = 1.0是不會通過編譯的,因為1.0在java中應該是double型的,所以你必須這樣聲明,float t = 1.0F;或者乾脆float t =(float)1.0;
這是新手常犯的錯誤,也是面試常見的java基礎之一

閱讀全文

與javalongfloat相關的資料

熱點內容
我的世界國際服為什麼登不進伺服器 瀏覽:994
微盟程序員老婆 瀏覽:928
intellij創建java 瀏覽:110
java連接odbc 瀏覽:38
啟動修復無法修復電腦命令提示符 瀏覽:359
手機編程是什麼 瀏覽:97
山東移動程序員 瀏覽:163
蘇州java程序員培訓學校 瀏覽:476
單片機液晶驅動 瀏覽:854
魔拆app里能拆到什麼 瀏覽:130
新預演算法的立法理念 瀏覽:144
wdcpphp的路徑 瀏覽:134
單片機p0口電阻 瀏覽:926
瀏覽器中調簡訊文件夾 瀏覽:594
五菱宏光空調壓縮機 瀏覽:68
為什麼app佔用幾百兆 瀏覽:680
自動解壓失敗叫我聯系客服 瀏覽:484
易語言新手源碼 瀏覽:457
oa伺服器必須有固定ip地址 瀏覽:45
傳奇源碼分析是什麼 瀏覽:270