關於Java中byte,short,char,int 之間相互賦值的問題

首先明確這幾種數據類的取值範圍:

byte:  -128~127

short: -2^15~2^15-1

char: 0~65536

int: -2^31~2^31-1


請看以下代碼:

byte b = 100;

short s = b; //正確,因爲byte的取值範圍在short取值範圍之內。

char c = b; //錯誤,因爲byte的取值範圍不完全在char的取值範圍內。

c = s;  //錯誤,因爲short的取值範圍不完全在char的取值範圍內。

int x = b; //正確,因爲byte的取值範圍在int取值範圍之內。

x = s ;  //正確,因爲short的取值範圍在int取值範圍之內。

x = c;  //正確,因爲char的取值範圍在int取值範圍之內。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章