數據類型轉換
類型轉換分爲:強制(顯式)轉換、隱式轉換
那麼什麼時候顯式轉換?什麼時候隱式轉換呢?
我們這裏把各種數據類型形象比喻成大小不同的水杯,當小水杯裏的水往大水杯裏面倒時,自然不用考慮容量問題,稱爲隱式轉換;而大水杯的水往小水杯裏面倒時,就要考慮容量問題了,所以此時就需要強制(顯式)轉換。
通常轉換數據的類型有七種:
char,byte,short,int,long,float,double
下面我們通過程序來確定幾種數據類型的相互轉換關係:
byte隱式轉換爲short類型
byte byte3=10;
short short3;
short3=byte3;
short顯式轉化爲byte類型
short short4=10;
byte byte4;
byte4=(byte)short4;
由上可知,除char以外類型,可遵循數據內存順序進行轉換
byte --> short --> int --> long --> float --> double
按照箭頭方向是自動轉換,反之需要強制轉換
在這裏着重介紹一下char類型與其他類型之間的轉換關係
char隱式轉換爲int類型
char char1='你';
int int1;
int1=char1;
int強轉char
int int2=4;
char char4;
char4=(char)int2;
char類型強轉byte
char char2='大';
byte byte1;
byte1=(byte)char2;
byte類型強轉char
byte byte2=10;
char char3;
char3=(char)byte2;
short強轉char
short short1=11;
char char5;
char5=(char)short1;
char類型強轉short
char char6='小';
short short2;
short2=(short)char6;
由上可推出:
char向int以及之後的高等級數據類型遵循自動轉換的原則
char和byte、short需要相互強制轉換