類型轉換
- 由于Java是強類型語言,是以要進行某些運算時時需要進行類型轉換的
Java資料類型優先級由低到高排序如下:
byte->short->char->int->long->float->double
- 運算中,不同類型的資料先轉化為同一類型,然後進行運算。
-
優先級低的轉換為優先級高的類型時,無需強轉,系統會自動進行類型轉換
例如:
int類型->double類型屬于低類型向高類型轉換,是以會自動轉換而且不會報錯!public class HelloWorld { public static void main(String[] args) { int i = 1; double a = i; } }
-
高優先級類型轉為低級類型時則需要強制類型轉換,格式為***(類型)變量名***
例如:
public class HelloWorld { public static void main(String[] args) { int i =128; byte a =(byte)i; } }
這裡由int類型轉為byte類型,則是高->低的轉換,是以需要進行強制轉換。
如果直接寫成“byte a =i;”則會報錯!
- 注:資料類型的優先級排列是根據每種資料類型的容量來排列的。
- 布爾值不能進行轉換!
- 類型轉換時候可能會存在溢出!