When You use a += b in Java, the interpreter changes your statement a += b to
a = (instanceof a) (a + b) i.e. it automatically typecasts your assignment so no error came but when you write a = a + b; it needs an explicit typecast.
so if you write,
int a = 3;
a += 32.5; // it actually a = (int)(a + 32.5);