認識基本數據類型
在學習基本數據類型之前,我們先認識一下這兩個單詞:
1、bit --位:位是計算機中存儲數據的最小單位,指二進位數中的一個位數,其值為「0」或「1」。2、byte --字節:字節是計算機存儲容量的基本單位,一個字節由8位二進位數組成。在計算機內部,一個字節可以表示一個數據,也可以表示一個英文字母,兩個字節可以表示一個漢字。1Byte=8bit (1B=8bit)1KB=1024Byte(字節)=8*1024bit1MB=1024KB1GB=1024MB1TB=1024GB
基本數據類型:
int 32bitshort 16bitlong 64bitbyte 8bitchar 16bitfloat 32bitdouble 64bitboolean 1bit(boolean 的備註+翻譯)This data type represents one bit of information, but its "size" isn't something that's precisely defined.(ref)
這種數據類型代表一個比特的信息,但它的「大小」沒有明確的定義
輸出
Java 支持的數據類型包括
基本數據類型和引用類型
基本數據類型如下:
整數值型:byte、short、int、long字符型:char浮點類型:float、double布爾型:boolean整數型:默認 int 型,小數默認是 double 型。Float 和 Long 類型的必須加後綴。比如:float f = 100f 。基本數據類型注意事項:
未帶有字符後綴標識的整數默認為int類型;未帶有字符後綴標識的浮點數默認為double類型。如果一個整數的值超出了int類型能夠表示的範圍,則必須增加後綴「L」(不區分大小寫,建議用大寫,因為小寫的L與阿拉伯數字1很容易混淆),表示為long型。帶有「F」(不區分大小寫)後綴的整數和浮點數都是float類型的;帶有「D」(不區分大小寫)後綴的整數和浮點數都是double類型的。編譯器會在編譯期對byte、short、int、long、float、double、char型變量的值進行檢查,如果超出了它們的取值範圍就會報錯。int型值可以賦給所有數值類型的變量;long型值可以賦給long、float、double類型的變量;float型值可以賦給float、double類型的變量;double型值只能賦給double類型變量引用類型聲明的變量是指該變量在內存中實際存儲的是一個引用地址,實體在堆中。
引用類型包括類、接口、數組等。特別注意,String 是引用類型不是基本類型。什麼是值傳遞和引用傳遞?
值傳遞,是對基本型變量而言的,傳遞的是該變量的一個副本,改變副本不影響原變量。引用傳遞,一般是對於對象型變量而言的,傳遞的是該對象地址的一個副本,並不是原對象本身。一般認為,Java 內的傳遞都是值傳遞,Java 中實例對象的傳遞是引用傳遞。
是否可以在 static 環境中訪問非 static 變量?
static 變量在 Java 中是屬於類的,它在所有的實例中的值是一樣的。當類被 Java 虛擬機載入的時候,會對 static 變量進行初始化。
如果你的代碼嘗試不用實例來訪問非 static 的變量,編譯器會報錯,因為這些變量還沒有被創建出來,還沒有跟任何實例關聯上。
char 型變量中能不能存貯一個中文漢字?為什麼?
在 C 語言中,char 類型佔 1 個字節,而漢字佔 2 個字節,所以不能存儲。在 Java 語言中,char 類型佔 2 個字節,而且 Java 默認採用 Unicode 編碼,一個 Unicode 碼是 16 位,所以一個 Unicode 碼佔兩個字節,Java 中無論漢字還是英文字母,都是用 Unicode 編碼來表示的。所以,在 Java 中,char 類型變量可以存儲一個中文漢字。