1. 程式人生 > >有關Java資料型別轉換

有關Java資料型別轉換

資料型別轉換

話不多說,先來圖片 在這裡插入圖片描述

  • 基本資料型別與引用資料型別

    基本:boolean, char,byte,short,int,long,float,double 引用:String,引用型別具體可分為:陣列、類和介面
  • 隱式轉換

    隱式轉換也叫作自動型別轉換, 由系統自動完成.從儲存範圍小的型別到儲存範圍大的型別. byte ->short(char)->int->long->float->double
  • 顯示轉換

    顯示型別轉換也叫作強制型別轉換, 是從儲存範圍大的型別到儲存範圍小的型別.當我們需要將數值範圍較大的數值型別賦給數值範圍較小的數值型別變數時,由於此時可能會丟失精度(1講到的從int到k型的隱式轉換除外),因此,需要人為進行轉換。我們稱之為強制型別轉換。 double→float→long→int→short(char)→byte 當進行數學運算時,資料型別會自動發生提升到運算子左右之較大者,例如:
int a=233;
byte b=(byte) a;
System.out.println(b);

此時得到的數值是-23,233的二進位制表示為:24位0 + 11101001,byte型只有8位,於是從高位開始捨棄,截斷後剩下:11101001,由於二進位制最高位1表示負數,0表示正數,其相應的負數為-23。

  • 補充

    資料類型範圍從小到大排序(byte ->short(char)->int->long->float->double )。 1.布林型別Boolean不能參與型別轉換; 2.兩個char型運算時,自動轉換為int型;當char與別的型別運算時,也會先自動轉換為int型的,再做其它型別的自動轉換