讓我們考慮Java中的一些簡單表達式。Java中的類型轉換和自動類型提升
byte var=0;
var=(byte)(var+1);
這裏,在上面的語句,很明顯的類型,因爲自動型的推廣需要鑄造。
表達(VAR + 1)進行評價的結果自動提升因此INT,必須明確地被轉換爲字節到它的結果分配給一個字節變量在其上是變種分配的權
現在,讓我們考慮下面的Java語句。
var++;
這有點等同於前面的陳述,應該需要一個強制轉換,儘管它沒有強制轉換。爲什麼?
即使下面的語句不需要轉換。爲什麼?
byte x=var++;
只有當您不能將(byte)1添加到var時,它纔是等價的,但您可以 - 爲什麼不會++使用正確的類型? –