這是我的代碼:爲什麼B = B + 1當B是字節不會編譯,但B + = 1編譯
class Example{
public static void main(String args[]){
byte b=10;
//b=b+1; //Illegal
b+=1; //Legal
System.out.println(b);
}
}
我想知道爲什麼我得到一個編譯錯誤,如果我使用b=b+1
,但另一方面b+=1
編譯正確,而他們似乎做同樣的事情。
你是說編譯器並沒有「說明理由」您????? –
錯誤 - >(不兼容的類型:從int到byte的可能有損轉換)。但在這種情況下「b + = 1」在這種情況下,編譯器如何做到這一點 –