就是我們在編程的時候經常需要用到的數據類型,如整型,浮點型等,把這些數據類型專門拿出來特殊對待,並想象成所謂的“基本類型”。
Java中沒有明確定義boolean類型所占空間的大小,但其只能取true或false,初始化的默認值為false;
boolean類型對應的封裝類為Boolean;
字符類型,占用兩個字節的空間,即16位,Java中的字符是用Unicode來存儲的,中英文字符都可以用一個char來存儲,如下示例:
a字符轉成整形,其值的大小用十六進制表示為6211,該值即為該字符在unicode字符集中的序號,a字符的Unicode格式即為'\u6211'
package tmp; public class Main { public static void main(String[] args) { char a = '我'; System.out.println(Integer.toHexString(a) + '\u6211'); } }
char的初始默認值為'u0000',范圍:'\u0000'——'\uFFFF',其封裝類為Character.
整型,一個字節大小,初始默認值為0,其它沒啥好說的了。
整型,兩個字節大小,初始默認值為0。
整型,四個字節大小,初始默認值為0。
整型,八個字節大小,初始默認值為0l。
浮點型,四個字節大小,范圍為32位IEEEE 754單精度范圍,初始默認值為0.f。
浮點型,八個字節大小,范圍為64位IEEEE 754單精度范圍,初始默認值為0.0。
空類型,主要用於方法名前,表示該方法無返回值;
這個功能是在JAVA SE5引入的,簡單的說,就是基本類型與包裝類之間的自動轉換。
舉個例子,int的裝箱及Integer的拆箱,實際上調用的都是Integer類裡的以下方法:
裝箱:valueOf(int i)
拆箱:intValue()
有興趣的可以在源代碼打個斷點測試;
舉個例子:
package tmp; public class Main { public static void main(String[] args) { //自動裝箱,實際上調用Integer.valueOf(int); Integer i1 = 100; //自動拆箱,實際調用Integer對象的intValue()方法; int i2 = new Integer(100); } }
參考資料:
JAVA編程思想