Java語言是強類型語言,所有變數都必須確定具體的數據類型。 原生數據類型 byte(1位元組)、short(2位元組)、int(4位元組)、long(8位元組)、 boolean(1位元組) 、float(4位元組) 、double(8位元組) 、char(2位元組) 引用類型 範圍小的類型轉換為範圍大的類型,可 ...
Java語言是強類型語言,所有變數都必須確定具體的數據類型。
原生數據類型 byte(1位元組)、short(2位元組)、int(4位元組)、long(8位元組)、 boolean(1位元組) 、float(4位元組) 、double(8位元組) 、char(2位元組)
引用類型
範圍小的類型轉換為範圍大的類型,可以直接轉換。
範圍大的類型轉換為範圍小的類型,需要強制類型轉換。
數值類型和boolean類型之間不能轉換,強制類型轉換也不可以。
小數的預設類型為double類型。
基本數據類型存儲在棧中,引用類型地址存儲在棧中,內容存在堆中。
int a=10; a是基本數據類型
Data d=new Date(); d是引用類型
引用 類型只能用=、==、!=,比較的是引用的值。
裝箱就是將基本數據類型轉換為包裝類型。
拆箱就是將包裝類型轉換為基本類型。
在自動拆箱裝箱的過程中,java使用到了常量池。
只有數值範圍在byte範圍內。在自動裝拆箱時才會 使用池操作。
String類是不可變得,對象一旦創建,就不能被修改,可以使用=直接賦值,此時使用常量池,也可以使用new關鍵字創建,不使用常量池。
StringBuilder是可變的,對象創建後,可以修改。必須使用new關鍵字。
StringBuffer是不同步,在單線程下使用比StringBuider高效,不許使用new關鍵字。
使用API中的Arrays類的sort方法可以排序。
數組的長度一旦被確定,不能再修改。
&&和||會放生短路邏輯。