您好,登錄后才能下訂單哦!
變量就是申請內(nèi)存來存儲值。也就是說,當(dāng)創(chuàng)建變量的時候,需要在內(nèi)存中申請空間。
內(nèi)存管理系統(tǒng)根據(jù)變量的類型為變量分配存儲空間,分配的空間只能用來儲存該類型數(shù)據(jù)。 因此,通過定義不同類型的變量,可以在內(nèi)存中儲存整數(shù)、小數(shù)或者字符。
Java的兩大數(shù)據(jù)類型:
1. 內(nèi)置數(shù)據(jù)類型(基本數(shù)據(jù)類型)
①. 六種數(shù)字類型( byte, short, int, long, float, double) + void
8 16 32 64 32 64 位
②. 一種字符類型 char
16位Unicode字符
③. 一種布爾型 boolean
1位
2. 關(guān)于Integer
對于兩個非new生成的Integer對象,進(jìn)行比較時,如果兩個變量的值在區(qū)間 -128到127之間,則比較結(jié)果為true,如果兩個變量的值不在此區(qū)間,則比較結(jié)果為false
Integer i = 100;
Integer j = 100;
System.out.print(i == j); //true
Integer i = 128;
Integer j = 128;
System.out.print(i == j); //false
java在編譯Integer i = 100 ;時,會翻譯成為Integer i = Integer.valueOf(100)。而java API中對Integer類型的valueOf的定義如下,對于-128到127之間的數(shù),會進(jìn)行緩存,Integer i = 127時,會將127進(jìn)行緩存,下次再寫Integer j = 127時,就會直接從緩存中取,就不會new了。
public static Integer valueOf(int i){
assert IntegerCache.high >= 127;
if (i >= IntegerCache.low && i <= IntegerCache.high){
return IntegerCache.cache[i + (-IntegerCache.low)];
}
return new Integer(i);
}
引用數(shù)據(jù)類型
引用類型變量由類的構(gòu)造函數(shù)創(chuàng)建,可以使用它們訪問所引用的對象。這些變量在聲明時被指定為一個特定的類型。變量一旦聲明后,類型就不能被改變了。
對象、數(shù)組都是引用數(shù)據(jù)類型,所有引用類型的默認(rèn)值都是null。
基本數(shù)據(jù)類型只能按值傳遞,而封裝類按引用傳遞。
Void無返回值類型,作為偽類型對應(yīng)類的對象,也被認(rèn)為是 基本數(shù)據(jù)類型
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。