java基本數據類型


基本數據類型

JAVA中一共有八種基本數據類型,他們分別是 
byte、short、int、long、float、double、char、boolean

 
類型 型別 字節 取值范圍
byte 整型 1byte -27 ~ 27-1
short 整型 2byte -215 ~ 215-1
int 整型 4byte -231 ~ 231-1
long 整型 8byte -263 ~ 263-1
float 浮點型 4byte 3.402823e+38 ~ 1.401298e-45
double 浮點型 8byte 1.797693e+308~ 4.9000000e-324
char 文本型 2byte 0~216-1
boolean 布爾型 1byte true/false

 

 

 

 

 

 

 

 

 

 

 

 

 

 

在通常情況下,如果JAVA中出現了一個整數數字比如35,那么這個數字就是int型的。如果我們希望它是byte型的,可以在數據后加上大寫的 B:35B,表示它是byte型的。同樣的35S表示short型,35L表示long型的,表示int我們可以什么都不用加,但是如果要表示long型的,就一定要在數據后面加“L”。 

double型比float型存儲范圍更大,精度更高,所以通常的浮點型的數據在不聲明的情況下都是double型的,如果要表示一個數據是float型的,可以在數據后面加上“F”。 
浮點型的數據是不能完全精確的,所以有的時候在計算的時候可能會在小數點最后幾位出現浮動,這是正常的。

 

自動類型轉換

1)兩種類型是彼此兼容的
2)轉換后的目標類型占的空間范圍一定要大於被轉化的源類型

由低字節向高字節自動轉換(黑線表示無數據丟失的自動數據轉換,紅線表示轉換中可能發生精度丟失)

  <關於int轉float發生精度丟失,而int轉double可以無數據丟失,可參考 https://blog.csdn.net/qq_31778159/article/details/79284113 >

 

強制數據轉換

將容納更多信息的數據類型轉換成一個容量更小的數據類型,可能存在精度損失的風險,編譯器要求程序員進行強制類型轉換。

強制轉換過程中可能發生數據溢出,必須警惕。

     int a=(int)3.14;

 

 數據類型自動提升

  如果兩個操作數其中有一個是double類型,另一個操作就會轉換為double類型。
  否則,如果其中一個操作數是float類型,另一個將會轉換為float類型。
  否則,如果其中一個操作數是long類型,另一個會轉換為long類型。
  否則,兩個操作數都轉換為int類型。

 

參考資料:

1、https://www.cnblogs.com/singlesoar/p/5688915.html

2、https://www.cnblogs.com/skipping/p/5449019.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM