Java語言的基本數據類型

Java語言的基本數據類型共八種,也可稱爲內置類型,分別具有對應的包裝類。字符型char,布爾型boolean以及數值型byte、short、int、long、float、double。數值型又可以分爲整形(byte、short、int(默認類型)、long)與浮點型(float、double(默認類型))。它們的取值範圍是固定的,不會隨着機器硬件環境或軟件環境的改變而改變。固定的存儲空間正是Java可移植性、跨平臺的原因之一。以上八種數據類型不存在“引用”的概念,其都是直接存儲在內存中的內存棧上的,數據本身的值就是存儲在棧空間中,而複雜數據類型,其“引用”是存儲在有序的內存棧上的,而對象本身的值存儲在內存堆上。

整數類型 

              byte 包裝類 java.lang.Byte 其佔1個字節 8位  默認初始值 0 取值範圍 -2^(8-1)~2^(8-1)-1

              short 包裝類 java.lang.Short 其佔2個字節 16位 默認初始值 0 取值範圍 -2^(16-1)~2^(16-1)-1

              int  包裝類 java.lang.Integer  其佔4個字節 32位 默認初始值 0 取值範圍  -2^(32-1)~2^(32-1)-1 默認類型

              long 包裝類 java.lang.Long 其佔8個字節 64位 默認初始值 0 取值範圍 -2^(64-1)~2^(64-1)-1

實數類型

              float 包裝類 java.lang.Float 其佔4個字節 32位 默認初始值  0.0

              double 包裝類 java.lang.Double 其佔8個字節 64位 默認初始值 0.0  默認類型

字符型

               char 包裝類 java.lang.Character 其佔2個字節 16位 默認初始值空格字符 取值範圍 0 ~ 2^(16-1)-1  

布爾類型

              boolean 包裝類 java.lang.Boolean 其佔一位0或1  默認初始值false  取值 true false

 

當變量在方法中得初始化,在類中當屬性時可以不用。

 

基本類型數據轉型分爲兩種:自動轉型和強制轉型

           自動轉型:當一個數據類型較“小”的數據和一個數據類型較”大“的數據一起運行時,系統會自動將較”小“的轉換爲較“大”的類型。

           在方法的調用中,如果實際參數類型較“小“,而函數的形參比較”大“時,除非有匹配的方法,否則會直接使用較”大”的形參函數進行使用。因爲實參類型可自動的轉爲函數形參類型。

          強制裝換:恰恰相反,將數據類型”大“的轉換爲“小”的時候,用強制轉換不過這時有可能會出現精度損失。轉換方法例如int num = (nt)3.14 ; 後num爲3;不四捨五入

 byte  short (char)  int (默認類型) long float double 自動轉換類型順序 強制則反過來 。

 

常見問題:

               各種基本數據類型進行混合運算,結果會是表達能力最強的那種。如:int和long運算,結果是long,整型和浮點型運算結果是浮點型。特殊的一點是:只要類型比int小(如char、byte、short),那麼在運算之前,這些值會自動地轉換成int。

例子:
             byte b1 = 12;
             byte b2 = b1 + 1; //在編譯時出錯了!因爲b1+1已經是int型了!切記! 系統自動轉型了! (byte) (b + 1)

             float f = 1.3 ; //錯的 因爲 默認是 double類型 而且double類型高於float類型  解決的辦法就是 float f = 1.3f; 或者是強轉成float型。

             long l = 1L ; long l1 = 2l; 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章