byte b1 = 3;
byte b2 = 0;
b2 = (byte) (b2 + b1); // line 3
System.out.println(b2);
b2 = 0;
b2 += b1; // line 6
System.out.println(b2);
Satırı 3, sonucu bir bayt olarak yazmazsak bir derleyici hatasıdır. Bunun nedeni, toplama sonucunun her zaman int ve int'ye uymaması olabilir. bir bayt. Ama görünüşe göre, 6. satırda yazım yapmak zorunda değiliz. Her iki ifade de, satır 3 ve satır 6, eşdeğer değil mi? Eğer değilse, başka ne farklı?bayt eklerken farklı derleyici davranışı
Başka soru yok, onurunuz. – f1sh
Jon Skeet tarafından ilk sorumu yanıtladığım için iyi hissediyorum :) – Zohaib