(數據類型)byte b1=3,b2=4,b; b=b1+b2; b=3+4; 哪句是編譯失敗的呢 ? 面試題

JAVA基礎複習:第二句出錯b=b1+b2; b是byte數據類型,3和4是int數據類型,

         byte 3   佔一個字節:0000 0011

byte 4   佔一個字節: 0000 0100

        int 3     佔四個字節:0000 0000  0000 0000 0000 0000 0000 0011

int 4     佔四個字節:0000 0000 0000 0000 0000 0000 0000 0100

     int類型數據相加得到的數據是4個字節,而byte數據相加只有一個字節,把一個int數據賦值給byte數據就會出現數據越界的錯誤。


謝謝sh21_

    卻是是第二句出錯,前段時間剛好也有同事給我指出的我的錯誤,只是當是沒想到我還寫了博客的,真是有點慚愧!

   第二局:b=b1+b2;編譯出錯。錯誤提示爲“不能從int類型轉換爲byte類型”

   而第三句:b=3+4;沒有錯誤。byte類型轉換爲int類型屬於自動數據類型轉換。

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